Даны два натуральных числа mm и nn ( m \le nm≤n). Напишите программу, которая выводит все числа от mm до nn включительно удовлетворяющие хотя бы одному из условий: число кратно 17;
число оканчивается на 9;
число кратно 3 и 5 одновременно.
Формат входных данных
На вход программе подаются два натуральных числа mm и nn (m \le nm≤n), каждое на отдельной строке.
Формат выходных данных
Программа должна вывести числа в соответствии с условием задачи.
Примечание. Если чисел удовлетворяющих условию нет, выводить ничего не надо.
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
begin
Writeln('k=',ArrRandom(15,1,20).Println.Count(x->x>10))
end.
Тестовое решение
4 16 14 9 11 18 17 14 14 15 1 1 9 10 15
k=9
2. А вот так учат решать в школе...
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
var
a:array[1..15] of integer;
i,k:integer;
begin
Randomize;
k:=0;
for i:=1 to 15 do begin
a[i]:=Random(20)+1;
Write(a[i],' ');
if a[i]>10 then k:=k+1
end;
Writeln;
Writeln('k=',k)
end.
Тестовое решение:
18 15 7 6 3 3 10 6 6 15 2 16 16 2 12
k=6
Код1:
#include <iostream>#include <cmath>constexpr double semi_perimeter (double a, double b, double c) { return (a + b + c) / 2;}double first_task(double a, double b, double c) { auto p = semi_perimeter(a, b, c); return sqrt(p*(p-a)*(p-b)*(p-c));}int main() { double A, B, C, S; std::cin >> A >> B >> C; S = first_task(A, B, C); std:: cout << S << std::endl; return 0;}Код2:
#include <iostream>#include <cmath>constexpr double peak(double a, double b) { return (a > b) ? a : b;}double second_task(double a, double b, double c) { return peak(peak(a, b), c);}int main() { double A, B, C, R; std::cin >> A >> B >> C; R = second_task(A, B, C); std:: cout << R << std::endl; return 0;}