var
a: array [1..16] of integer; //Массив из 16 целых чисел
i: integer;
b: boolean; {Логическая переменная (найдено ли хотя бы одно число, кратное трем)}
begin
b:= false; //Ни одного числа, кратного трем еще не найдено
write('Исходный массив: ');
for i:= 1 to 16 do {Заполняем исходный массив случайными числами от - 20 до 20 и распечатываем его}
begin
a[i]:= random(40) - 20;
write(a[i], ' ');
end;
writeln;
for i:= 1 to 16 do //Определяем, есть ли в массиве хотя бы одно число, кратно трём, и если есть, то выходим из цикла
if (a[i] mod 3 = 0) and (a[i] <> 0) then
begin
writeln('В массиве есть хотя бы одно число, кратное трём');
b:= true;
break;
end;
if b = false then writeln('В массиве нет ни одного числа, кратного трём');
end.
Если все правильно, отметь решение как лучшее)
Писал в Visual Studio, выбор пользователя есть. Проверки сделал, все верно считает. Код :
#include "stdafx.h"
#include <iostream>
#include <windows.h>
using namespace std;
double zadanie(double R, bool a)
{
double otvet = 0;
switch (a)
{
case 0:
{
otvet = (3.14*R*R); // S = pi * R^2
break;
}
case 1:
{
otvet = (2*R*3.14); // L = 2 * R * pi
break;
}
}
return otvet;
}
int main()
{
setlocale(LC_ALL, "Russian");
bool menu; // 0 - Площадь, 1 - Длина окружности.
double radius = 0;
cout << "Введите радиус круга: ";
cin >> radius;
cout << "\nВыберите расчет: \n" << "[0] Площадь круга \n" << "[1] Длина окружности круга \n\n" << "Пункт: ";
cin >> menu;
cout << "\nответ: " << zadanie(radius, menu) << endl;
return 0;
}
Объяснение: