Запрограммировать 3 разветвляющихся алгоритма
Запрограммировать решение задач на языке Паскаль и выслать листинг на почту (или ВК): 1) Программа предлагает вычислить выражение 12*6 - 13*3 и ввести ответ с клавиатуры. Если ответ верен, то вывести на экран фразу "Правильно!", иначе - вывести "Ошибка в расчётах!" 2) Программа запрашивает возраст. Если введён воздаст до 14 лет, то программа выводит "Вы ещё не получили паспорт!, иначе - программа выводит "Пасторт вами получен!". 3*) Составьте программу "Покупка". В магазине продают три вида мороженого: Эскимо по цене 50 рублей, фруктовый лёд по цене 30 рублей и пломбир по цене 48 рублей. Программа запращивает "Какое мороженое хотите купить?". Пользователь вводит название сорта мороженого. В ответ на экран выводится стоимость мороженого
var
i,a,b:integer;
ar:array[1..10] of integer;
procedure oddDec(var a,b:integer); //подпрограмме переданы аргументы a и b
//процедура для вычитания в нечётном элементе
begin;
a:=a-b;
end;
procedure NotoddInc(var a,b:integer); //подпрограмме переданы аргументы a и b
//процедура для сложения в чётном элементе
begin;
a:=a+b;
end;
begin
randomize;
readln(a); //ввод a
readln(b); //ввод b
writeln('Array:');
for i:=1 to 10 do //весь массив
begin;
ar[i]:=random(-20,80); //случайные числа от -20 до 80 включительно
write(ar[i]:4); //вывод
if odd(i) then oddDec(ar[i],b) else NotoddInc(ar[i],a);
{если нечётное, то первая процедура, иначе вторая. Обращаю внимания на то, что элементы меняются сразу после вывода}
end;
writeln;
writeln('Final array:'); //вывод получившегося массива
for i:=1 to 10 do
write(ar[i]:4);
end.
Пример ввода:
20
10
Пример вывода:
Array:
10 16 0 60 23 4 22 -20 4 55
Final array:
0 36 -10 80 13 24 12 0 -6 75
var x: integer; { введенное число } n: byte := 0; { количество цифр в числе } i, j: byte; { счетчики } xi: array[1..5] of integer;{массив цифр, из которых состоит число}
begin { Ввод исходного числа } readln(x); writeln; x := abs(x); // рассматриваем модуль числа { Разбиение числа на цифры } while (x > 0) do begin n := n + 1; // увеличиваем количество цифр xi[n] := x mod 10; // вычисляем цифру (остаток от деления на 10) if xi[n] = 8 then // если встретилась 8, begin writeln('да'); // то число "бесконечное" readln; exit; // выход из программы end; x := x div 10; // изменяем число (целое от деления на 10) end; { Поиск цифр, встречающихся больше одного раза} for i := 1 to n - 1 do for j := i + 1 to n do if xi[i] = xi[j] then // если числа begin writeln('да'); // то число "бесконечное" readln; exit; // выход из программы end; { Число не явлется "бесконечным" } writeln('нет');end.