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

Дан двумерный массив целых чисел размером m*n . найти количество столбцов данного массива, все элементы которых различны

👇
Ответ:
ник5047
ник5047
24.06.2020
// PascalABC.NET 3.2, сборка 1427 от 24.04.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество колонок в массиве:');
  Writeln('*** Исходный массив [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-9,9);
  a.Println(3); Writeln(3*a.ColCount*'-');
  Write('Колонок, где все элементы различны, ',
      a.Cols.Where(c->c.Distinct.Count=m).Count);
end.

Пример
Количество строк в массиве: 6
Количество колонок в массиве: 7
*** Исходный массив [6,7] ***
 -9  6 -1  5  1 -9 -6
 -2  9  1 -7 -6 -5 -1
  4 -7  2  1  3  1  2
  0  3  8  5 -6  8 -9
 -2 -2  8 -4 -7  0  8
 -2  1  1 -8 -9  1 -4

Колонок, где все элементы различны, 2
4,7(97 оценок)
Открыть все ответы
Ответ:
ирина12374
ирина12374
24.06.2020

Значит просто расписать как это должно работать?

Объявляем переменную День, которая будет считывать количество дней.

Вводится H хлеба - общее количество и Z - количество, которое потребляется в день.

Переведем кг в г, чтобы легче было считать: H = H * 1000

Запускается цикл пока H > 0(пока хлеб вообще имеется)

один проход цикла - один день, значит в теле цикла H = H - Z

То есть мы вычитаем из общего кг хлеба суточное потребление.

И увеличиваем переменую День на 1.

После этого цикла выводим переменную День.

Приведу пример на языке с++. В случае ввода H = 1, Z = 50, выводится ответ 20 дней

#include <iostream>

#include <cstdlib>

using namespace std;

int main()

{

int day = 0, Z, N;

cin >> N >> Z;

N = N * 1000;

while(N > 0){

 N = N - Z;

 day++;

}

cout << day << endl;

system("pause");

return 0;

}

4,6(6 оценок)
Ответ:
allonso
allonso
24.06.2020
1. В "реальном мире" это решается примерно так:

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
begin
  var a:=ArrRandom(ReadInteger('n='),0,2); a.Println;
  a.Sorted.Println
end.

Тестовое решение:
n= 15
1 2 0 2 2 0 2 0 2 0 0 1 0 0 2
0 0 0 0 0 0 0 1 1 2 2 2 2 2 2

2. Но, поскольку считается, что школьникам больше заняться нечем, их заставляют писать примерно в таком стиле (и время займет, и ощибок понаделают):

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
const
  nn=100;
var
  i,j,n,t:integer;
  a:array[1..nn] of integer;
begin
  Write('n='); Read(n);
  Randomize;
  for i:=1 to n do begin
    a[i]:=Random(3);
    Write(a[i],' ')
    end;
  Writeln;
  for i:=1 to n-1 do
    for j:=1 to n-1 do
      if a[j]>a[j+1] then begin
        t:=a[j]; a[j]:=a[j+1]; a[j+1]:=t
        end;
  for i:=1 to n do Write(a[i],' ');
  Writeln;
end.

Тестовое решение:
n=15
0 1 1 0 2 1 0 2 1 2 1 0 0 2 0
0 0 0 0 0 0 1 1 1 1 1 2 2 2 2
4,5(50 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ