pascal - коды простых программ

Заполнение массива A(10) случайными числами и вывод элементов массива

program n_2;

var i: integer;
    a: array[1..10] of integer;

begin
  randomize;

  for i:=1 to 10 do
    a[i]:=random(100);

  for i:=1 to 10 do
    write(a[i],' ');
end.

Вычисление суммы элементов массива

program  n_3;
  var s, i: integer;
      a: array[1..10] of integer;
begin 
  s:=0;
  randomize;
  for i:=1 to 10 do a[i]:=random(100);
  for i:=1 to 10 do write (a[i],' ');
  for i:=1 to 10 do s:=s+a[i];
  writeln('s=', s)
end.

Вычисление суммы элементов массива
[Используем операторные скобки и всё (ввод, вывод, обработку) делаем в одном цикле]

program  n_3_1;
  var s, i: integer;
      a: array[1..10] of integer;
begin 
  s:=0;
  randomize;

  for i:=1 to 10 do
     begin 
        a[i]:=random(100);
        write(a[i],' ');
        s:=s+a[i]
     end;

  writeln('s=', s)
end.

Программа поиска наибольшего элемента в массиве

program  n_4;
  var i, imax: integer; 
      a: array[1..10] of integer;
begin 
  randomize;

  for i:=1 to 10 do a[i]:=random(100);
  for i:=1 to 10 do write(a[i],' ');

  imax:=1;

  for i:=2 to 10 do
    if a[i]>a[imax] then
       imax:=i;

  write('Наибольший элемент   a[', imax, ']=', a[imax])

end.

Поиск элемента, равного 50

program  n_5;

var   n, i: integer; 
      a: array[1..10] of integer;

begin 
  randomize;

  for i:=1 to 10 do a[i]:=random(100);
  for i:=1 to 10 do write(a[i],' ');

  n:=0;
  for i:=1 to 10 do
    if a[i]=50 then
       n:=i;

  if n=0 then
     write('Нет')
  else
     write(n)

end.

Поиск элемента, равного 50

program  n_5_1;
  var n, i: integer; 
      a: array[1..10] of integer;
begin 
  randomize;
  for i:=1 to 10 do a[i]:=random(100);
  for i:=1 to 10 do write(a[i],' ');

  i:=0;
  repeat
    i:=i+1;
  until (a[i]=50) or (i=10);

  if a[i]=50 then
    write(i) 
  else 
    write('Нет')
end.

Для подсчета вводится переменная, значение которой увеличивается на единицу каждый раз, когда найден нужный элемент.

program  kolich;

var   k, i: integer; 
      a: array[1..10] of integer;

begin 
  randomize;

  for i:=1 to 10 do a[i]:=random(100);
  for i:=1 to 10 do write (a[i],` `);

  k:=0;
  for i:=1 to 10 do
    if a[i]>50 then
       k:=k+1;

  write('k=', k)

end.

Сумма значений элементов, удовлетворяющих условию

program  sum ;

var   s, i: integer; 
      a: array[1..10] of integer;

begin 
  randomize;

  for i:=1 to 10 do
    a[i]:=random(100);

  for i:=1 to 10 do
    write (a[i],` `);

  s:=0;
  for i:=1 to 10 do
    if (a[i]>10) and (a[i]<30) then
      s:=s+a[i];

  write('s=', s)

end.

Сортировка массива

program sort;

var   n, i, j, x, imax: integer;
      a: array [1..10] of integer;

begin
  for i:=1 to 10 do read (a[i]);
  for i:=1 to 10 do write (a[i], ' ');

  for i:=1 to 9 do
  begin
    imax:=i;
    for j:=i+1 to 10 do
      if a[j]>a[imax] then
        imax:=j;

    x:=a[i];
    a[i]:=a[imax];
    a[imax]:=x
  end;

  for i:=1 to 10 do
    write(a[i], ' ')
end.

Возведение числа в любую степень.

program calc_stepen;

var
  a, b, h, i: integer;
  c: real;

begin
  b := 1;
  readln( a, h);
  for i := 1 to abs(h) do
    b := b * a;
  if h < 0 then
    c := 1 / b
  else
    c := b;

  writeln( c:3:5 );

end.

Определение гласных и согласных букв:

program alfabet;

var
  s: char;

begin
  read(s);
  case s of 
    'а','е','ё','и','о','у','ы','э','ю','я': writeln('гласные');
    'б','в','г','д','ж','з','й','к','л','м','н','п','р','с','т','ф','х','ц','ч','ш','щ': writeln('согласные');
    
  else
    writeln('знаки');
  end;
end.



Решение 50 типовых задач на Pascal, Душистов


 

Рейтинг

Проблемы с госуслугами, медленный интернет или плохая связь? Напишите об этом — Минцифры поможет с решением