Я написал программу в Pascal ABC Net:
var
a,x,n,y: integer;
i,s,sum,b: real;
begin
n := 7;
sum := 0.0;
for y := 1 to n do
begin
write(y, '-е число = ');readln(b);
sum := sum + b
end;
a:=sum;
readln( a ); x:=a;
s:=0;
while ( x<>0 ) do
begin
s := s + (x mod 10);
x := x div 10;
end;
case round(a/s) of
1,5,7,9,11,13,15: writeln('Выпадет: Красное');
2,4,6,8,10,12,14,16: writeln('Выпадет: Чёрное');
3: writeln('Выпадет: Зелёное');
else writeln('Выпадет: Неизвестный цвет');
end;
readln;
end.
ПРИ ПОПЫТКЕ ЗАПУСТИТЬ ЕЁ, ПИШЕТ: Program1.pas(12) : Нельзя преобразовать тип real к integer.
Как мне это исправить, чтобы прога нормально работала? Ругается на строчку a:=sum;
Суть программы такова, что нужно человеку сначала ввести n чисел, после чего программа должна сложить данные числа и эту сумму поделить на сумму чисел в числе,которое получилось в первой сумме, когда человек вводил числа.
Формула: \frac{ sum_{1} }{sum_{2}}
где sum1= сумму n чисел, которые ввёл человек
sum2=сумму чисел в числе, получившееся в результате сложения чисел, вводимых человеком.
Answers & Comments