|  | 
 
 | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  проблемы с Double есть проблема: нужно разделить отрезок длинной L на части, но если L: Double;(не целочисленныя длинна отрека,а скажем 90.5) выдает ошибку:[DCC Error] Project1.dpr(19): E2015 Operator not applicable to this operand type Код: var
X, i, j: Integer;
l,a1:Double;
begin
Write('L = ');
ReadLn(L);
Write('X = ');
ReadLn(X);
Write('i = ');
ReadLn(i);
a1 := L div X - (i * (X - 1)) div 2;
for j := 1 to X do begin
Write(a1, ' ');
a1 := a1 + i;
end;
ReadLn;
end. | 
| 
			 
			#2  
			
			
			
			
		 | |||
| 
 | |||
|   в какой строчке ошибка? | 
| 
			 
			#3  
			
			
			
			
		 | |||
| 
 | |||
|   Правильное а1 это: a1 := (2*L/X - (i * (X - 1)))/2; И вот тогда и с L проблем не будет. P.S. Просчитался я. Ваша формула тоже верна, только вместо div надо обычное деление делать. Последний раз редактировалось FlyInDream, 30.09.2011 в 13:25. | 
| 
			 
			#4  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 Код: a1 := L div X - (i * (X - 1)) div 2; | 
| 
			 
			#5  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 7.010000000000Е+0001 и так далее | 
| 
			 
			#6  
			
			
			
			
		 | ||||
| 
 | ||||
|   выводи writeln(floattostr(a1)); | 
| 
			 
			#7  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 | 
| 
			 
			#8  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 только в обеих выводит не с большего к меньшему, а наоборот- от меньшего к большему. как сделать наоборот подскажите? | 
| 
			 
			#9  
			
			
			
			
		 | |||
| 
 | |||
|   Код: ... a1 := (2*L/X + (i * (X - 1)))/2; for j := 1 to X do begin Write(a1, ' '); a1 := a1 - i; end; Последний раз редактировалось FlyInDream, 30.09.2011 в 16:15. |