Массивы в Pascal

Что такое массивы и матрицы. Как их объявить и использовать в языке программирования Pascal. Открытые массивы.

Комментарии

Заполнить массив случайными числами из промежутка 1-100 и определить в массиве, сколько значений чётных и сколько нечётных.

Ответ на от Гость

program n1;
uses crt;
var aw:array[1..10] of integer;
i,w,g:integer;
begin
g:=0;
w:=10;
for i:=0+1 to w do begin
aw[i]:=random(100);
write(aw[i]:6);
          end;
writeln();
write('Чот');
for i:=0+1 to w do begin
if aw[i] mod 2 = 0 then g:=g+1; end; write('Всего чотных чисел ',g);
writeln();
write('Не чот');
g:=0;
for i:=0+1 to w do begin
if aw[i] mod 2 > 0 then g:=g+1;end; write('Всего не чотных чисел ',g) ;
end.

Ответ на от Гость

const n = 10;
type Mstring = array [1..n] of string;
var m:Mstring;
procedure InputM(var arg:Mstring);
var i:byte;
begin
     for i:=1 to n do
         begin
              writeln('enter string number ',i);
              readln(arg[i]);
         end;
end;
 
procedure OutputM(const arg:Mstring);
var i:byte;
begin
     for i:=1 to n do
         begin
              writeln(arg[i]);
         end;
end;
function repl(const arg:string):string;
var i:byte;
    res:string;
begin
     res:=arg;
     for i:=1 to length(res) do
         begin
              if res[i] = '!' then res[i]:='.';
         end;
     repl:=res;
end;
 
procedure MasRepl(var arg:Mstring);
var i:byte;
begin
     for i:=1 to n do
         begin
              arg[i]:= repl(arg[i]);
         end;
end;
 
begin
     InputM(m);
     MasRepl(m);
     OutputM(m);
     readln;
end.

Школьников отправили на распределение яблок из кучи. Количество яблок в куче не известно. Распределяют яблоки на 4 корзины. 1(Красные), 2(Зеленые), 3(Желтые), 4(Испорченные). Требуется написать программу для распределения и подсчета яблок в каждой корзине и куче. Количество яблок в куче должно быть рандомизировано. Если цифра один, то в первую корзину ,если 2 то во вторую ,а если 3 ,то в 3 ,ну а если 4 то в 4 (когда выпадает ноль то все конец).

Ответ на от Гость

Я точно как не понял по вашему описанию так как вы написали что что должно быть рандомизировано но при этом чтобы на 0 был конец программы также я не понял ну чот написал просьба ответить так надо или нет!!!

program n1;
uses crt;
var i,c,m,g,v,s,q,h :integer;
begin
q:=random (10);
for h:=1 to q do begin
writeln('Какое попалось яблоко ? Красное,Зеленое,Желтое,Испорченное ?');
readln(s);
if s=1 then i:=i+1 else if s=2 then c:=c+1 else if s=3 then g:=g+1 else if s=4 then v:=v+1 ;
end;
writeln('     Всего яблок в куче ',i+c+g+v);
writeln ('  Красных яблок ' ,i, '  Зеленых яблок ',c);
writeln ('  Желтых яблок ',g,'  Испорченных яблок ',v);
end.

Ответ на от Гость

Program i563;
  Var M: array [1..100] of integer;
      N, a, b, c, d, i: integer;
  Begin
    a:=0;
    b:=0;
    c:=0;
    d:=0;
    readln(N);
    for i := 1 to N do read (M[i]);
    for i:=1 to N do
      Begin
        if M[i]=1 then inc(a);
        if M[i]=2 then inc(b);
        if M[i]=3 then inc(c);
        if M[i]=4 then inc(d);
      End;
    write(a,' ',b,' ',c,' ',d);
  End.

Нужно создать массив. Элементы вводятся с клавиатуры, а вывести каждый элемент, увеличен в два раза, причем на первой строке вводится количество элементов (не более ста), а на второй - сами элементы. Если с увеличением в два раза я справится могу, то не знаю что делать с количеством элементов. Объясните пожалуйста!

Написать программу, которая запрашивает с клавиатуры 10 чисел. Найти номер максимального элемента и минимальный элемент. Вывести массив в столбик.

Ответ на от Гость

program m1;
var i : byte;
	max,imax:integer;
	a:array [1..10] of integer;
BEGIN
for i:=1 to 10 do
	begin
		readln(a[i]);
	end;	
	max:=a[1];
for i:=1 to 10 do
	while max<a[i] do
		begin
			max:=a[i];
			imax:=i;
		end;
	writeln('max=',max);
	writeln('imax=',imax);
END.

Ответ на от Гость

const
         n = 10; //Константа для массива
 
var
         a: array [1..n] of integer; //Обявили массив от 1 до 10(n)
         i, min, max: integer;
 
begin
         for i := 1 to n do // Включили счетчик для ввода чисел в массив от 1 до n
         begin
                  Write('Введите число ', i, ' в массив: ');
                  Readln(a[i]);
         end;
         // Алгоритм вычисления минимального элемента
         min := a[1];
         for i := 2 to n do // Начали с 2, т.к мы присвоили переменной min первое значение
         begin
                  if a[i] < min then
                           min := a[i];
         end;
                             // Алгоритм вычисления максимального элемента
         max := a[1];
         for i := 2 to n do
         begin
                  if a[i] > max then
                           max := a[i];
         end;
         Writeln('Максимальный элемент: ',max);
         Writeln('Минимальный элемент: ',min);
         Writeln('{ВЫВОДИМ МАССИВ}');
         for i:= 1 to n do //Счетчик на вывод массива
         begin
         Writeln(i ,' элемент: ',a[i]);
end;
end.

Заполните целочисленный массив m, состоящий из n элементов, значениями, которые равны порядковому номеру элемента. Выведите результат на экран двумя способами.

В исходном массиве подсчитать количество чётных и не чётных элементов,положительных и отрицательных элементов,количество нулей диапазон -100,100.

Ответ на от Гость

const N=100;
var
a:array[1..n] of integer;
s,null,o,h,r,k,i:integer;
begin
s:=0; h:=0; r:=0;k:=0;
for i:=1 to n do
begin
a[i]:=random(100)-100;
write(a[i]:4);
end;
for i:=1 to n do
begin
if a[i] mod 2=0 then inc(k);
if a[i] mod 2>0 then inc(r);
if a[i]<0 then inc(h);
if a[i]>0 then inc(o);
if a[i]=0 then inc(null); 
end;
writeln;
writeln('kol chetnix elementov= ',k);
writeln('kol nechetnix elementov= ',r);
writeln('kol otrisatelnix elementov= ',h);
writeln('kol polojitelnix elementov= ',o);
writeln('kol 0 elementov= ',null);
end.

Ответ на от Гость

const n=30;
var a:array[1..n] of integer;
      i,k:integer;
begin 
  for i:=1 to n do 
    begin
      a[i]:=random(100);
       write(a[i],'   ');
    end;
  writeln;
   k:=0
   for i:=1 to n do
      begin 
      if a[i]>50 then 
         k:=k+1;
        end; 
     writeln('чисел со значениями >50: ', k);
   end.

вычислить сумму и количество элементов массива x больших по абсолютной по величене заданного числа a где a больше 0. эллементы массива вычисляются по формуле Xi=i^2-10i+1 где i=1,2,...,10

Дан массив из 7 чисел.Найти сумму отрицательных чисел и порядковые номера положительных.

В массиве из 10 элементов найти сумму элементов больше 0 и сумму элементов меньше 25

заполнить случайным образом массив из 10 чисел, подсчитать сколько элементов являются четными числами

Напишите программу определения суммы четных чисел элементов массива (массив из 30 случайных чисел в диапазоне от 0 до 30).

Для массива X(m) напечатать сумму, произведение и номера положительных элементов после последнего нулевого элемента. Данные для ввода: m=7, X(1;0;4;0;-1;2;3)

Напишите программу, которая заполняет массив случайными числами на отрезке [–2; 2] и считает сумму положительных элементов массива.