Найти сумму первых 10 натуральных чисел кратных 3.Найти произведение первых 8 натуральных чисел кратных 7.Вывести первые 25 натуральных четных чисел.Вывести первые 15 натуральных чисел кратных 5.Ввести четное число с клавиатуры. Разделить его на 2 до тех пор, пока оно не станет равно1.Ввести число с клавиатуры. Вычитать от него 1, пока оно не станет равным 0.Ввести число с клавиатуры. Прибавлять к нему 5, до тех пор пока оно не станет больше самого себя в 10 раз.Ввести число с клавиатуры. Отнимать от него 2, до тех пор пока оно не станет меньше самого себя вдвое.Ввести натуральное число с клавиатуры. Найти количество его цифр.Ввести натуральное число с клавиатуры. Найти сумму его цифр.Ввести число с клавиатуры. Вывести все его цифры.Вывести 15 первых чисел, так чтобы каждое последующее было в 2 раза больше предыдущего.Вывести 10 первых чисел, так чтобы каждое последующее было на 10 больше предыдущего.Вывести 20 первых чисел, так чтобы каждое последующее было на 1 меньше предыдущего. Первое число - 25.
{ Boland Pascal 7.01 } uses Crt; const n=20; var a,b:array[1..n] of integer; i,k:integer; begin ClrScr; Randomize; Writeln('*** Исходный массив ***'); k:=0; for i := 1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4); if Odd(a[i]) and (a[i]>0) then begin Inc(k); b[k]:=a[i] end end; Writeln; if k>0 then begin Writeln('*** Сформированный массив ***'); for i:=1 to k do Write(b[i]:4); Writeln end else Writeln('Нет элементов для формирования выходного массива'); ReadKey end.
А вот для сравнения современный вариант программы: // PascalABC.NET 3.0, сборка 1088 begin var n:=ReadInteger('Размер массива='); var a:=ArrRandom(n,-25,25); Writeln('*** Исходный массив ***',#13#10,a); var b:=a.Where(x->(Odd(x) and (x>0))); If b.Count>0 then Writeln('*** Сформированный массив ***',#13#10,b) else Writeln('Нет элементов для формирования выходного массива') end.
Найти сумму первых 10 натуральных чисел кратных 3.Найти произведение первых 8 натуральных чисел кратных 7.Вывести первые 25 натуральных четных чисел.Вывести первые 15 натуральных чисел кратных 5.Ввести четное число с клавиатуры. Разделить его на 2 до тех пор, пока оно не станет равно1.Ввести число с клавиатуры. Вычитать от него 1, пока оно не станет равным 0.Ввести число с клавиатуры. Прибавлять к нему 5, до тех пор пока оно не станет больше самого себя в 10 раз.Ввести число с клавиатуры. Отнимать от него 2, до тех пор пока оно не станет меньше самого себя вдвое.Ввести натуральное число с клавиатуры. Найти количество его цифр.Ввести натуральное число с клавиатуры. Найти сумму его цифр.Ввести число с клавиатуры. Вывести все его цифры.Вывести 15 первых чисел, так чтобы каждое последующее было в 2 раза больше предыдущего.Вывести 10 первых чисел, так чтобы каждое последующее было на 10 больше предыдущего.Вывести 20 первых чисел, так чтобы каждое последующее было на 1 меньше предыдущего. Первое число - 25.
uses Crt;
const
n=20;
var
a,b:array[1..n] of integer;
i,k:integer;
begin
ClrScr;
Randomize;
Writeln('*** Исходный массив ***');
k:=0;
for i := 1 to n do begin
a[i]:=Random(51)-25;
Write(a[i]:4);
if Odd(a[i]) and (a[i]>0) then
begin Inc(k); b[k]:=a[i] end
end;
Writeln;
if k>0 then begin
Writeln('*** Сформированный массив ***');
for i:=1 to k do Write(b[i]:4);
Writeln
end
else Writeln('Нет элементов для формирования выходного массива');
ReadKey
end.
Тестовое решение:
*** Исходный массив ***
-3 -16 -9 20 18 11 -25 14 -22 -20 -11 15 -19 20 -16 19 -2 -4 -8 -17
*** Сформированный массив ***
11 15 19
А вот для сравнения современный вариант программы:
// PascalABC.NET 3.0, сборка 1088
begin
var n:=ReadInteger('Размер массива=');
var a:=ArrRandom(n,-25,25);
Writeln('*** Исходный массив ***',#13#10,a);
var b:=a.Where(x->(Odd(x) and (x>0)));
If b.Count>0 then Writeln('*** Сформированный массив ***',#13#10,b)
else Writeln('Нет элементов для формирования выходного массива')
end.
Тестовое решение:
Размер массива=20
*** Исходный массив ***
[-9,-1,8,-7,13,0,-22,20,18,-15,9,-14,16,15,0,1,9,-17,22,-13]
*** Сформированный массив ***
[13,9,15,1,9]
Исправлено: по " трудящихся" добавлена блок-схема.