1) k:=k mod 3+k*cos(5); В правой части стоит функция косинус, которая определена только для вещественных чисел и операция mod, которая определена только для целых чисел. Если k целочисленное, то правая часть будет вещественной и попытка присвоить вещественное значение целочисленной переменной недопустима. Надо ставить явное преобразование, например k:=Trunc(k mod 3+k*cos(5)); или k:=Round(k mod 3+k*cos(5)); Если же k - вещественное, то операция k mod 2 недопустима. 2) x:=x*2 div 6+x/4 Тут в правой части смешаны операция div, которая определена только для целых и операция деления, которая определена для вещественных. Такое смешивание вещественных и целый запрещено. В Паскале нет функции перевода целых в вещественные, только процедура, но её в выражение не встроишь. Поэтому можно только говорить о переводе результата х/4 к целому значение посредством Trunc(х/4) или Round(x/4). Либо о замене х/4 на x div 4. Само собой, х надо объявлять целым.
kuchin
26.10.2021
1. var x:integer; y:real; begin write('Введите значение аргумента "X" : '); readln(x); y:=3*cos((5*x)); writeln('Значение функции "Y" = ',y); readln; end.
2. var x,b:integer; begin write('Введите количество молока, полученного за день, л : '); readln(x); write('Введите количество дней : '); readln(b); writeln('Количество молока, полученного за заданный промежуток времени = ',x*b); readln; end.
3. var a,b,c:integer; begin write('Введите двузначное число: '); readln(a); b:=a div 10; c:=a mod 10; writeln(b,#10,c); end.
4. var b:integer; a:longint; begin write('Введите целое число: '); readln(a); b:=a div 100 mod 100; writeln(b); readln; end.
5. var a,b:integer; begin write('Введите числа : '); readln(a,b); if a and b mod 2=0 then writeln(a+b); if a and b mod 2<>0 then writeln(a*b); readln; end. {Про последнее "Иначе", увеличьте все числа в пять раз и выведите результаты" не очень понялЕсли оба чётные - сумма, если оба - нечётные - то произведение. А если иначе, то число должно быть равно нулю. Смысл увеличивать его в пять раз?)}
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
решить одно из заданий (кроме первого Нужно написать программу в Паскаль + блоксхема (но, это не обязательно).
В правой части стоит функция косинус, которая определена только для вещественных чисел и операция mod, которая определена только для целых чисел. Если k целочисленное, то правая часть будет вещественной и попытка присвоить вещественное значение целочисленной переменной недопустима. Надо ставить явное преобразование, например k:=Trunc(k mod 3+k*cos(5)); или k:=Round(k mod 3+k*cos(5));
Если же k - вещественное, то операция k mod 2 недопустима.
2) x:=x*2 div 6+x/4
Тут в правой части смешаны операция div, которая определена только для целых и операция деления, которая определена для вещественных. Такое смешивание вещественных и целый запрещено. В Паскале нет функции перевода целых в вещественные, только процедура, но её в выражение не встроишь. Поэтому можно только говорить о переводе результата х/4 к целому значение посредством Trunc(х/4) или Round(x/4). Либо о замене х/4 на x div 4. Само собой, х надо объявлять целым.