М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Макс228336
Макс228336
10.06.2020 03:16 •  Информатика

Задача 1. Создать программу для формирования таблицы умножения (таблицы Пифагора).
Program Piphagor;
Uses crt;
var i,j:byte;
a: array [1..9, 1..9] of integer;
begin
clrscr;
{шапка таблицы Пифагора}
for i:=1 to 9 do write(i:3,' |'); writeln;
for i:=1 to 9 do write('+'); writeln;
{сама таблица}
for i:=2 to 9 do
begin
for j:=1 to 9 do
begin
a[i,j]:=i*j;
write(a[i,j]:3,' |');
end;
writeln;
end;
readln;
end.

Пример № 2.
Составить программу, которая в двумерном массиве случайных чисел находит в каждой строке наибольший элемент и записывает его в одномерный массив.
m – количество строк в двумерном массиве и длина одномерного массива;
n – количество столбцов;
A[1..m,1..n] - двумерный массив;
B[1..m] – одномерный массив
max – вс переменная для нахождения наибольшего элемента в каждой строке.

Program max_str;
Uses crt;
сonst
m=5;
n=6;
var i,j:byte;
a: array [1..m, 1..n] of integer;
b: array [1..m] of integer;
max: integer;
begin
clrscr;randomize;
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(100);
write(a[i,j]:4);
end;
writeln;
end;
writeln ('Массив из максимальных значений в строках:');
for i:=1 to m do
begin
max:=a[i,1];
for j:=2 to n do
begin
if a[i,j]>max then max:=a[i,j];
end;
b[i]:=max;
write (b[i]:4);
end;
readln;
end.

👇
Открыть все ответы
Ответ:
Nathoe789
Nathoe789
10.06.2020
Uses crt;
const
q=1000;var
a:array[1..q,1..q]of integer;
m,n,i,j,c,k,buf:integer;
b:array[1..q]of integer;
begin 
   writeln('n,m ?')   ;
   readln(n,m);
    writeln('как заполнять матрицу ?');     
    writeln(' Нажмите 1 при датчика, 2 - ввод с клавиатуры'); 
{выбор действия при заполнении}                        
readln(c);   
              case c of         
                 1:for i:=1 to n do
                        begin
                            for j:=1 to m do
                               begin
                                   a[i,j]:=random(100);
                                    write(a[i,j]:4);
                                end;
                              writeln;
                         end;
                   2:
                    begin
                     for i:=1 to n do
                        begin
                            for j:=1 to m do
                              readln(a[i,j]);
                         end;
                          clrscr;
                       for i:=1 to n do
                           begin
                               for j:=1 to m do
                                  write(a[i,j]:4);
                               writeln;
                           end;
    end;
                 end;
writeln('формирование массива');
for i:=2 to n do
    begin
       if i mod 2=0 then
               for j:=1 to m do
                     if a[i,j]>2 then
                          begin
                              k:=k+1;
                               b[k]:=a[i,j];
                           end;
      end;
writeln;
for i:=1 to k do
    write(b[i]:4);
writeln;
{сортировка}
for i:=1 to k -1 do
     for j:=i+1 to k do
         if b[i]<b[j]then
             begin
                   buf:=b[i];
                   b[i]:=b[j];
                   b[j]:=buf;
             end;
{вывод массива}
for i:=1 to k do
    write(b[i]:4);
end.
                         
                    
                        
4,6(30 оценок)
Ответ:
rororo5209
rororo5209
10.06.2020
Var
    a: array [,] of integer;

begin
    var n := ReadlnInteger('n = ');
    var m := ReadlnInteger('m = ');
    var rand := ReadlnInteger('Для ручного ввода нажмите 0');
    
    if rand = 0 then begin
        a := new integer[m, n];
        for var i := 0 to m-1 do
            for var j := 0 to n-1 do
                a[i, j] := ReadlnInteger('a[' + i + ',' + j + '] = ');
    end
    else a := MatrixRandom(m, n, 1, 100);
    Println(a);
    
    var b := ArrGen(n, x -> 1);
    for var i := 0 to m-1 do
        for var j := 0 to n-1 do
            if j mod 2 = 0 then
                b[j] := b[j] * a[i, j];
    
    b.Where((x, i)-> i mod 2 = 0).SortedDescending().Println();
end.
4,8(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ