Другие языки программирования и технологии

Задачи на массив паскаль, помогите пожалуйста

Дан массив Q - [ q [ i, j] , i =1,10; j=1,10]

(элементы выбираются случайным образом):

*Найти сумму элементов, удовлетворяющих условию 1 < q [i, j] <18.

Вывести на экран индексы не нулевых элементов.

Найти максимальный отрицательный элемент.

* Произведение положительных элементов главной диагонали матрицы. i + j – 1, если j - четно и i >3

Построить массив qi,j = { i 2 + 1, в остальных случаях

Дано целое число. Вычислить произведение цифр в числе.

С клавиатуры вводится текст. Слова разделяются пробелом. Ввод текста прекращается после нажатия на клавиатуре точки. Выдать на экран преобразованный текст, удалив из него все гласные буквы.
это какой класс?
Дмитрий Кошелев
Дмитрий Кошелев
58 028
Лучший ответ
Могу дать произведение цифр.
var x,p:integer;
begin
write('Chislo:');
readln(x);
p:=1;
while x>0 do
begin
p:=p*(x mod 10);
x:=x div 10;
end;
writeln('Proizv=',p)
end.
AA
Azamat Ahmetov
83 844
разбей все вот это на отдельные задания и для каждого задавай вопрос. так больше шансов на ответ.
Алексей Пинчук
Алексей Пинчук
13 080
program TooBig;

const min = -100;
const max = 100;
const vowels = 'eaoiuyEAOIUY ';
var
Q : array[1..10, 1..10] of integer;
ind : string[1023];
buf : string[3];
i, j, k : integer;
sum : integer;
eMin, eMax : integer;
prod : real;

begin
randomize;
sum := 0;
ind := "";
eMin := max;
eMax := min;
prod := 1;
writeln('PART ONE');
for i := 1 to 10 do
begin
for j := 1 to 10 do
begin
Q[i,j] := random(max-min+1) + min;
write(Q[i, j], ' ');
if (Q[i,j] > 1) and (Q[i,j] < 18) then sum := sum + Q[i, j];
if Q[i, j] <> 0 then
begin
Str(i, buf);
ind := concat(ind, '[', buf, ',');
Str(j, buf);
ind := concat(ind, buf, ']; ');
end;
if Q[i,j] < 0 then
begin
if Q[i, j] > eMax then eMax := Q[i, j];
if Q[i, j] < eMin then eMin := Q[i,j];
end;
if (i=j) and (Q[i, j] > 0) then prod := prod * Q[i,j];
end;
writeln;
end;
write('Sum of elements between 1 and 18: ');
writeln(sum);
write('Indexes of non-zero-elements: ');
writeln(ind);
write('MAX negative element: ');
writeln(eMax);
write('MIN negative element: ');
writeln(eMin);
write('Production of positive elements of main diagonal: ');
writeln(prod:20:0);
writeln;
writeln('PART TWO');
for i:=1 to 10 do
begin
for j := 1 to 10 do
begin
if (j mod 2 =0) and (i > 3) then Q[i,j] := i+j-1 else Q[i,j] := i*i+1;{Такая формула? }
write(Q[i, j], ' ');
end;
writeln;
end;
writeln;
writeln('PART THREE');
write('Enter number: ');
read(k);
if k < 0 then k := -k;
prod := 1;
i := 10;
while k div i > 9 do
i := i*10;
prod := prod * (k div i);
while i > 1 do
begin
k := k mod i;
i := i div 10;
prod := prod*(k div i);
end;
write('Production of digits: ');
writeln(prod:20:0);
writeln;
writeln('PART FOUR');
writeln('Enter your line:');
ind := "";
repeat
read(buf[1]);
for i := 1 to 13 do
if buf[1] = vowels[i] then break;
if i >12 then ind := ind + buf[1];
until buf[1] = '.';
writeln(ind);
end.
{Input:
11335
There is something wrong. Do you know what is it exactly?

Output:
PART ONE
-48 -67 81 25 -59 59 30 -67 -50 89
24 37 -35 -38 -67 31 57 64 -35 -20
34 77 100 76 49 -18 32 -71 -80 -17
-69 -49 -94 51 -45 91 -92 -15 -52 -1
-36 -18 -74 4 -3 -69 -93 -16 98 -48
83 -82 28 -87 -56 -54 -59 91 -36 -63
-2 -81 -85 -62 -86 93 72 51 49 26
-19 31 63 -8 51 -28 65 -64 3 -24
54 4 91 -52 92 96 -76 -42 90 16
-52 12 -37 -62 -52 62 32 52 7 16
Sum of elements between 1 and 18: 62
Indexes of non-zero-elements: [1,1]; [1,2]; [1,3]; [1,4]; [1,5]; [1,6]; [1,7]; [1,8]; [1,9]; [1,10]; [2,1]; [2,2]; [2,3]; [2,4]; [2,5]; [2,6]; [2,7]; [2,8]; [2,9]; [2,10]; [3,1]; [3,2]; [3,3]; [3,4]; [3,5]; [3,6]; [3,7]; [3,8]; [3,9]; [3,10]; [4,1]; [4,2]; [4,3]; [4,4]; [4,5]; [4,6]; [4,7]; [4,8]; [4,9]; [4,10]; [5,1]; [5,2]; [5,3]; [5,4]; [5,5]; [5,6]; [5,7]; [5,8]; [5,9]; [5,10]; [6,1]; [6,2]; [6,3]; [6,4]; [6,5]; [6,6]; [6,7]; [6,8]; [6,9]; [6,10]; [7,1]; [7,2]; [7,3]; [7,4]; [7,5]; [7,6]; [7,7]; [7,8]; [7,9]; [7,10]; [8,1]; [8,2]; [8,3]; [8,4]; [8,5]; [8,6]; [8,7]; [8,8]; [8,9]; [8,10]; [9,1]; [9,2]; [9,3]; [9,4]; [9,5]; [9,6]; [9,7]; [9,8]; [9,9]; [9,10]; [10,1]; [10,2]; [10,3]; [10,4]; [10,5]; [10,6]; [10,7]; [10,8]; [10,9]; [10,10];
MAX negative element: -1
MIN negative element: -94
Production of positive elements of main diagonal: 19564416000

PART TWO
2 2 2 2 2 2 2 2 2 2
5 5 5 5 5 5 5 5 5 5
10 10 10 10 10 10 10 10 10 10
17 5 17 7 17 9 17 11 17 13
26 6 26 8 26 10 26 12 26 14
37 7 37 9 37 11 37 13 37 15
50 8 50 10 50 12 50 14 50 16
65 9 65 11 65 13 65 15 65 17
82 10 82 12 82 14 82 16 82 18
101 11 101 13 101 15 101 17 101 19

PART THREE
Enter number: Production of digits: 45

PART FOUR
Enter your line:
Thr s smthng wrng.
}