М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
katya2007
katya2007
08.03.2021 13:46 •  Информатика

Объясните, , в чем ошибка program funk; uses crt; var x,y: integer; begin for x: =-8 to 8 do y: =x*x+4/x+3; writeln (y); writeln (x); if x=0 then writeln ('функция не определена'); readkey end. пишет, что нельзя преобразовать тип real к integer, что то значит?

👇
Ответ:
DEKTG
DEKTG
08.03.2021
В операторе y:=x*x+4/x+3 используется операция деления, которая всегда возвращает вещественный тип. Следовательно, и всё выражение в правой части всегда будет иметь вещественный тип. А в левой части стоит переменная целого типа. Присваивание вещественного значения целочисленной переменной запрещено правилами языка Паскаль.
Чтобы избавиться от ошибки, нужно знать алгоритм, который реализует программа. В зависимости от алгоритма может быть использована операция целочисленного деления, может быть использована функция Trunc(), возвращающая целочисленное значение аргумента, либо переменная y должна объявляться вещественной.
4,5(33 оценок)
Открыть все ответы
Ответ:
s1656499
s1656499
08.03.2021
Program WordsCounter(output);
var        str: string;       
i, count: integer;
begin       
write('Сторка: ');       
readln(str);        
i := length(str);       
if i > 0 then begin               
count := 1;               
while i > 0 do begin                       
if str[i] = ' ' then                               
count := count + 1;                       
i := i - 1;               
end;       
end       
else               
count := 0;         
writeln('Число слов: ', count);
readln;
end.
4,8(100 оценок)
Ответ:
Gromokon
Gromokon
08.03.2021
Var a:array[1..15] of integer;
i:integer;
begin
for i:=1 to 15 do
read(a[i]);
for i:=15 downto 1 do
write(a[i],' ');
end.

var a:array[1..4,1..4] of integer;
i,j,s:integer;
begin
for i:=1 to 4 do
  for j:=1 to 4 do begin
  read(a[i,j]);
  if i=j then s+=a[i,j];
  end;
for i:=1 to 4 do begin
  for j:=1 to 4 do
  write(a[i,j]:3);
writeln;
end;
writeln(s);
end.

var a:array[1..20] of integer;
i,max:integer;
begin
for i:=1 to 20 do begin
read(a[i]);
if (a[i]>=100) and (a[i]<1000) and (a[i] mod 9 <> 0) and (a[i]>max) then max:=a[i];
end;
if (max<>0) then writeln(max)
else writeln('Не найдено');
end.
4,7(52 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика

MOGZ ответил

Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ