Задать вопрос
29 октября, 18:39

Сформируйте двухмерный массив и удалите из него все строки в которых встречается заданное число. TubrboPascal

+2
Ответы (1)
  1. 29 октября, 18:53
    0
    Uses

    Crt;

    const

    nn=10;

    var

    a:array[1 ... nn, 1 ... nn] of integer;

    d:array[1 ... nn] of boolean;

    i, j, k, n, n1, i1:integer;

    begin

    ClrScr;

    Randomize;

    Write ('Укажите число строк в массиве (2-10) : ') ;

    Read (n) ;

    Writeln ('Исходный массив') ;

    for i:=1 to n do

    begin

    for j:=1 to n do

    begin

    a[i, j]:=Random (51) - 25;

    Write (a[i, j]:4)

    end;

    Writeln

    end;

    Write ('Введите число, строки с которым надо удалить: ') ;

    Read (k) ;

    for i:=1 to n do

    begin

    d[i]:=False;

    j:=1;

    while (j<=n) and not d[i] do

    begin d[i]: = (a[i, j]=k) ; Inc (j) end

    end;

    n1:=n;

    while (d[n1]) and (n1>0) do Dec (n1) ;

    if n1=0 then Writeln ('Удалены все строки')

    else begin

    for i:=n1 downto 1 do

    begin

    if d[i] then begin

    for i1:=i to n1-1 do

    for j:=1 to n do a[i1, j]:=a[i1+1, j];

    Dec (n1)

    end

    end;

    Writeln ('Результирующий массив') ;

    for i:=1 to n1 do

    begin

    for j:=1 to n do Write (a[i, j]:4) ;

    Writeln

    end

    end;

    ReadKey

    end.

    Тестовое решение:

    Укажите число строк в массиве (2-10) : 10

    Исходный массив

    -6 23 18 9 4 15 - 22 12 16 - 18

    11 20 - 16 - 22 - 20 - 24 - 21 25 12 14

    -11 7 22 4 - 6 - 15 - 14 - 7 - 19 1

    -16 5 - 9 19 6 10 2 2 10 18

    -18 - 6 - 24 21 16 - 22 12 2 - 25 5

    0 - 11 16 - 11 6 21 - 12 - 1 13 - 20

    -24 3 - 22 14 19 22 2 - 15 10 - 13

    -22 16 12 24 - 3 - 2 - 20 16 - 11 4

    -9 - 15 - 1 - 20 17 - 17 - 24 3 - 19 9

    23 7 - 25 - 6 16 13 - 5 22 - 18 18

    Введите число, строки с которым надо удалить: - 6

    Результирующий массив

    11 20 - 16 - 22 - 20 - 24 - 21 25 12 14

    -16 5 - 9 19 6 10 2 2 10 18

    0 - 11 16 - 11 6 21 - 12 - 1 13 - 20

    -24 3 - 22 14 19 22 2 - 15 10 - 13

    -22 16 12 24 - 3 - 2 - 20 16 - 11 4

    -9 - 15 - 1 - 20 17 - 17 - 24 3 - 19 9
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Сформируйте двухмерный массив и удалите из него все строки в которых встречается заданное число. TubrboPascal ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике
1. Дан двухмерный массив A (n, m). Найти произведение отрицательных четных элементов второго столбца массива. 2. Дан двухмерный массив m*n. Получите одномерный массив b, элементы которого равны min элементам по строкам.
Ответы (1)
PascalABC 1. Задан массив А (N). Получить из него массив В, состоящий из элементов массива А, значения которых больше 0. 2. Задан двухмерный массив целых чисел A[N, M]. Найти строки, содержащие нулевые элементы.
Ответы (1)
Заполнить двухмерный массив размера N*M случайными целыми числами, диапазон изменения которых вводится с клавиатуры. Вывести массив на экран. Заполнить одномерный массив, элементами которого является сумма элементов каждой строки двухмерного массива.
Ответы (1)
1. Сформируйте и выведите целочисленный массив содержащий N первых положительных четных (нечетных) чисел 2. Сформируйте и выведите целочисленный массив содержащий степени двойки от первой до 16-й: 2,4,8,16,32 ...
Ответы (1)
Задан двухмерный массив. Определить, сколько раз встречается число 1 среди элементов третьей строки матрицы.
Ответы (1)