50 баллов! Напишите несложную программу ** Pascal: для четырех натуральных чисел извлечь...

0 голосов
22 просмотров

50 баллов! Напишите несложную программу на Pascal: для четырех натуральных чисел извлечь корень из чисел, которые неотрицательны и четны.


Информатика (86 баллов) | 22 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Если числа натуральные, то они не только неотрицательны, - они все положительны, поскольку начинаются с единицы. Посему проверка на отрицательность делаться не будет - ввод чисел меньше 1 противоречит условию задачи.

Вариант 1. Без операторов цикла.
var
  a,b,c,d:integer;
begin
  Write('Введите 4 натуральных числа: ');
  Read(a,b,c,d);
  if a mod 2=0 then Writeln('Корень из ',a,' равен ',sqrt(a));
  if b mod 2=0 then Writeln('Корень из ',b,' равен ',sqrt(b));
  if c mod 2=0 then Writeln('Корень из ',c,' равен ',sqrt(c));
  if d mod 2=0 then Writeln('Корень из ',d,' равен ',sqrt(d));
end.

Пример решения
Введите 4 натуральных числа: 3 8 16 12
Корень из 8 равен 2.82842712474619
Корень из 16 равен 4
Корень из 12 равен 3.46410161513775

Вариант 2. С оператором цикла.
var
  i,n:integer;
begin
  for i:=1 to 4 do begin
    Write('Введите натуральное число: ');
    Read(n);
    if n mod 2=0 then Writeln('Корень из ',n,' равен ',sqrt(n))
    end
end.

Пример решения
Введите натуральное число: 3
Введите натуральное число: 8
Корень из 8 равен 2.82842712474619
Введите натуральное число: 16
Корень из 16 равен 4
Введите натуральное число: 12
Корень из 12 равен 3.46410161513775

Вариант 3. С массивами
var
  i:integer;
  a:array[1..4] of integer;
begin
  Write('Введите 4 натуральных числа: ');
  for i:=1 to 4 do Read(a[i]);
  for i:=1 to 4 do
    if a[i] mod 2=0 then Writeln('Корень из ',a[i],' равен ',sqrt(a[i]))
end.

Пример решения
Введите 4 натуральных числа: 3 8 16 12
Корень из 8 равен 2.82842712474619
Корень из 16 равен 4
Корень из 12 равен 3.46410161513775

(150k баллов)