Алиференко_Елена342
?>

Написать на языке pascalabc 3.1 на улице дома с чётными номерами находятся с левой стороны, а с нечётными — с правой. известно количество жителей в каждом доме. посчитайте разницу между суммарными количествами жителей левой стороны и правой. входные данные первая строка состоит из одного числа n (1⩽n⩽1000) — количество домов на улице. следующая строка содержит n целых чисел xi (0⩽xi⩽10000) — количество жителей в i-м доме(1⩽i⩽n результат нужно вывести одно целое число — разницу между суммарными количествами жителей левой стороны улицы и правой. пример исходные данные 3 3 1 4 результат -6 пояснение: на левой стороне 1 житель, на правой 7, разница равна 1

Информатика

Ответы

stic1995
Program t;
varn, x, i, s, k:integer;
a:array [0..20] of integer; {20 =это максимальное количество домов .Вместо 20 поставь любое  число}
begin
write('Введите количество домов на улице : ');
read(n);
for i:=1 to n do
begin
write('Введите количество жителей в ', i, ' -м доме : ');
read(a[i]);
end; 
for i:=1 to n do    
if i mod 2=0 then s:=a[i]+s; {Считаем жителей правых}        
        for i:=1 to n do
        if i mod 2=1 then k:=a[i]+k;{Считаем жителей левых} 
if s>k then write('Разница между домами ', k-s ); 
if s<k then write('Разница между домами ', s-k );
end.

Введите количество домов на улице : 3
Введите количество жителей в 1 -м доме : 3
Введите количество жителей в 2 -м доме : 1
Введите количество жителей в 3 -м доме : 4
Разница между домами -6

Писал на Версии 3.3
Скобки это комментарии,их можно убрать
nurtilekisakov

Программа:

Pascal:

№1)

var arr: array[1..10] of integer;

begin

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

 writeln(arr);

end.

№2)

const N = 15;

var arr: array[1..N] of integer;

 i, tmp: integer;

begin

 for i := 1 to 15 do arr[i] := random(100);

 writeln(arr);

 for i:=1 to n div 2 do begin

   tmp := arr[i];

   arr[i] := arr[N - i + 1];

   arr[N - i + 1]:= tmp;

end;

writeln(arr);

end.

№3)

const N = 20;

var

 arr: array[1..N] of integer;

 i, tmp, j: integer;

begin

 for i := 1 to N do readln(arr[i]);

 writeln(arr);

 for i := 1 to N - 1 do

   for j := 1 to N - i do

     if (arr[j] > arr[j+1]) then begin

       tmp := arr[j];

       arr[j] := arr[j+1];

       arr[j+1] := tmp;

     end;

 writeln(arr);

end.

b3dllam
//Pascal ABC.NET v3.0 сборка 1111

Const
 s=5;

Var
 ar:array[1..s] of integer;
 n,m,i:integer;
begin
 writeln('N');
 readln(n);
 writeln('M');
 readln(m);
 writeln('Array:');
 for i:=1 to s do
   readln(ar[i]);
 writeln('First array:');
 for i:=1 to s do
  begin
   write(ar[i]:4);
   if ar[i] div n<>0 then ar[i]:=ar[i]+m;
  end;
 writeln;
 writeln('Final array:');
  for i:=1 to s do
   write(ar[i]:4);
end. 

Пример ввода:
3
3
1
2
3
4
5
Пример вывода:
First array:
   1   2   3   4   5
Final array:
   1   2   6   7   8

//Блок-схема во вложении
Ввести двумерный массив a. все элементы, которые при целочисленном делении на n ненулевое значение,

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Написать на языке pascalabc 3.1 на улице дома с чётными номерами находятся с левой стороны, а с нечётными — с правой. известно количество жителей в каждом доме. посчитайте разницу между суммарными количествами жителей левой стороны и правой. входные данные первая строка состоит из одного числа n (1⩽n⩽1000) — количество домов на улице. следующая строка содержит n целых чисел xi (0⩽xi⩽10000) — количество жителей в i-м доме(1⩽i⩽n результат нужно вывести одно целое число — разницу между суммарными количествами жителей левой стороны улицы и правой. пример исходные данные 3 3 1 4 результат -6 пояснение: на левой стороне 1 житель, на правой 7, разница равна 1
Ваше имя (никнейм)*
Email*
Комментарий*