Определить, есть ли в записи числа четные цифры - Pascal ABC
Формулировка задачи:
Всё делал руководствуясь книге. Непойму почему ругается компилятор((((
Код модуля
Листинг программы
- uses modul_1;
- var bliz_tochka,a1,b1,c1:integer;
- var chetnost_chisel,a2,b2,c2:integer;
- var arifmet_deistviya,a3,b3,c3:integer;
- var zelye_chisla,a4,b4,i4,s4:integer;
- var first_number,a5:longint;
- var funczia_radian,radtograd,a6:real;
- var sred_arifm,a7,b7,ar7,gm7:real;
- var funczia_proizved,proizved,a8,b8:real;
- begin
- bliz_tochka;
- chetnost_chisel;
- arifmet_deistviya;
- zelye_chisla;
- first_number;
- funczia_radian;
- sred_arifm;
- funczia_proizved;
- end.
Листинг программы
- Unit modul_1;{Название модуля}
- Interface
- var a1,b1,c1:integer;
- var a2,b2,c2:integer;
- var a3,b3,c3:integer;
- var a4,b4,i4,s4:integer;
- var a5:longint;
- var radtograd,a6:real;
- var a7,b7,ar7,gm7:real;
- var proizved,a8,b8:real;
- Implementation
- procedure bliz_tochka;
- begin
- writeln('Введите целые числа a,b,c');
- readln(a1,b1,c1);
- if (abs(b1-a1))>(abs(c1-a1)) then
- writeln('Точка c расположена ближе к точке a')
- else
- if (abs(b1-a1))=(abs(c1-a1)) then
- writeln('Точка b расположена на таком же расстоянии как и точка c')
- else
- writeln('Точка b расположена ближе к точке а');
- end;
- procedure chetnost_chisel;
- begin
- writeln('Условия задачи:');
- writeln('Дано двузначное число. Определить, есть ли в его записи четные цифры?');
- writeln('Введите двузначное число:');
- readln(a2);
- b2:=a2 mod 10;
- c2:=a2 div 10;
- case (b2 and c2) of
- {switch (b) case 2: case 4: case 6: case 8: case 0: Оператор ввода; break;}
- 2,4,6,8,0:writeln('В этом числе есть чётные цифры');
- 1,3,5,7,9:writeln('В этом числе нет чётных цифр');
- end;
- end;
- procedure arifmet_deistviya;
- begin
- writeln('Условия задачи:');
- writeln('Вычислить и вывести результат выбранного действия над данными числами.');
- writeln('Введите 2 целых числа:');
- readln(a3,b3);
- writeln('Введите операцию 1-сложение, 2-вычитание, 3-умножение, 4-деление');
- readln(c3);
- case c3 of
- 1:writeln(a3+b3);
- 2:writeln(a3-b3);
- 3:writeln(a3*b3);
- 4:writeln(a3/b3);
- end;
- end;
- procedure zelye_chisla;
- begin
- writeln('Введите начало и конец отрезка');
- readln(a4,b4);
- i4:=a4;
- s4:=0;
- while i4<=b4 do
- begin
- s4:=s4+i4;
- i4:=i4+1;
- end;
- writeln('Сумма целых чисел отрезка A,B = ',s4);
- end;
- procedure first_number;
- begin
- {7. Дано натуральное число. Вывести его первую цифру.}
- writeln('Дано натуральное число. Вывести его первую цифру');
- writeln('Введите число');
- readln(a5);
- while a5>9 do
- begin
- a5:=a5 div 10;{ Div – Отсечение последней цифры}
- end;
- writeln('Первая цифра данного числа = ',a5);
- end;
- Function funczia_radian(a6:real):real;
- begin
- writeln('Введите угол в радианах');
- readln(a6);
- radtograd:=a6*180/pi;
- writeln('Угол в градусах равен ',radtograd);
- end;
- Function sred_arifm(a7,b7,ar7,gm7:real):real;
- begin
- writeln('Введите A и B');
- readln(a7,b7);
- ar7:=a7+b7;
- ar7:=ar7/2;
- gm7:=a7*b7;
- gm7:=sqrt(gm7);
- writeln('Среднее арифметическое A и B = ',ar7:4:2);
- writeln('Среднее геометрическое A и B = ',gm7:4:2);
- if ar7<>gm7 then
- begin
- if ar7>gm7 then
- writeln('Среднее арифметическое A и B больше Среднего геометрического A и B')
- else
- writeln('Среднее геометрическое А и В больше Среднего арифметического А и В');
- end
- else
- writeln('Среднее арифметическое A и B равно Среднему арифметическому А и В');
- end;
- Function funczia_proizved(a8,b8:real):real;
- var proizved:real;
- begin
- writeln('Введите числа которые хотите умножить');
- readln(a8,b8);
- proizved:=a8*b8;
- writeln('Произведение данных чисел = ',proizved(a8,b8));
- end;
- begin
- end.
Решение задачи: «Определить, есть ли в записи числа четные цифры»
textual
Листинг программы
- uses modul_1;
- var a1,b1,c1:integer;
- var a2,b2,c2:integer;
- var a3,b3,c3:integer;
- var a4,b4,i4,s4:integer;
- var a5:longint;
- var a6:real;
- var a7,b7,ar7,gm7:real;
- var proizved,a8,b8:real;
- begin
- bliz_tochka;
- chetnost_chisel;
- arifmet_deistviya;
- zelye_chisla;
- first_number;
- writeln(funczia_radian(50));// в функциях передается значение и возвращается результат
- writeln(sred_arifm(1,2,3,5));//количество передаваемых параметров объявлено в заголовке функции
- writeln(funczia_proizved(3,5));
- end.
Объяснение кода листинга программы
Этот код написан на языке Pascal ABC и выполняет следующие действия:
- Объявляет переменные a1, b1, c1 типа integer, которые будут использоваться для хранения чисел.
- Объявляет переменные a2, b2, c2 типа integer, которые также будут использоваться для хранения чисел.
- Объявляет переменные a3, b3, c3 типа integer, которые также будут использоваться для хранения чисел.
- Объявляет переменную a4 типа integer, которая будет использоваться для хранения числа.
- Объявляет переменную a5 типа longint, которая будет использоваться для хранения числа.
- Объявляет переменные a6, b6, c6 типа real, которые будут использоваться для хранения чисел с плавающей точкой.
- Объявляет переменные a7, b7, ar7, gm7 типа real, которые также будут использоваться для хранения чисел с плавающей точкой.
- Объявляет переменные proizved и a8 типа real, которые будут использоваться для хранения результатов вычислений.
- Объявляет переменную a9 типа real, которая будет использоваться для хранения числа.
- Выводит результат функции funczia_radian(50).
- Выводит результат функции sred_arifm(1, 2, 3, 5).
- Выводит результат функции funczia_proizved(3, 5).
- Завершает программу.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д