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

Напишите программу на любом языке, главное уточните какой

ограничение времени 1 секунда

ограничение памяти 32mb

ввод matrix.in

вывод matrix.out

фирма по производству новых многоэлементных электронных матриц запускает новую линию, комплектуя ее узлом проверки готовой матрицы. узел засвечивает матрицу, подает напряжение на ее ячейки и считывает показания коэффициентов преломления каждой ячейки в виде цифр от 0 до 9. из этих показаний формируется таблица и записывается в файл. для оценки качества матрицы используется суммы коэффициентов преломления по каждой строке матрицы, а также количество сумм с максимальным значением из всех сумм коэффициентов по данной матрице. напишите программу, определяющую требуемые характеристики матрицы по имеющейся таблице коэффициентов преломления.

формат ввода

в первой строке входного файла matrix.in записано два натуральных числа, не превышающих 1024 - количество строк прямоугольной матрицы и количество ячеек в каждой строке. в последующих строках записаны без пробелов коэффициенты преломления.

формат вывода

в файл matrix.out следует вывести суммы коэффициентов преломления по одному в строке. последней строкой файла следует вывести количество сумм с максимальным значением из всех сумм коэффициентов по данной матрице. таким образом, в файле должно быть записано столько чисел, из скольких строк состоит электронная матрица, плюс одно число.

пример

ввод вывод

5 5 14

73022 25

95308 26

59282 18

55332 26

21797 2

👇
Открыть все ответы
Ответ:
kitmyfaded
kitmyfaded
05.09.2020
Жили-Были клавиатура, монитор, память и процессор, жили они дружно пока не возник спор кто из них главнее.Каждый начал приводить аргументы. "Я лучше потому-то без меня-клавиатуры мы бы не смогли печатать, то есть не смогли бы передавать информацию на компьютер"- сказала клавиатура , "Без меня-монитора мы бы не смогли видеть эту самую информацию"- говорил монитор, "Без меня- памяти мы бы не могли сохранить ее (информацию)"- протараторила память, "А без меня-процессора и вовсе компьютер не стал бы работать"- заявил процессор. И клавиатура, и монитор, и память, и процессор - все они неотъемлимые части компьютера, без них он бы не работал. Не стали они больше ссориться, и жили дружно и счастливо!
4,4(13 оценок)
Ответ:
masyanyapar
masyanyapar
05.09.2020
Как то так, можно улучшить конечно, но числа генерируются в нужном интервале, если найду что получше, то перепешу

var 

a:array[1..1000] of real;
i,x, j:integer;
cur:real;
l:text;
label y;

begin
assign(l, 'output.txt');
rewrite(l);
randomize;
for i:= 1 to 999 do
begin
y:
cur := 0.96743612142/( random(24)+random(11)+random(7));
x:= random(100);
if x > 20 then
  if cur < 0.4 then cur:= cur * random(5);
if (cur = 0) or (cur > 1)then goto y;
a[i]:=cur;
end;
for i:= 1 to 999 do
  for j:= 1 to 999 do
    if a[j] > a[i] then swap(a[j], a[i]);
for i:= 1 to 999 do writeln(l, a[i]:0:16);
close(l);

end.


Улучшенная версия 
var

  a: array[1..1000] of real;

  i, x, j: integer;

  cur, tmp: real;

  l: text;
label y, z;

begin
  assign(l, 'output.txt');

  rewrite(l);

  randomize;

  for i := 1 to 999 do

  begin

    y:

    tmp := 1 - 1 / (random(33) + random(11) + random(7));

    if tmp < 0.4 then goto y;

    cur := tmp / abs(random(24) + random(11) - random(7));

    if cur > 0.8 then 

    begin

      x := random(10000);

      if x < random(10000) then

      begin

        cur := cur / (1 - 1/(random(10) + random(11) + random(7)));              end;

    end;

    x := random(100);

    if x > 50 then

      if cur < 0.5 then cur := cur * random(5);

    if cur < 0.1 then

    begin

      x := random(10000);

      if x < 7000 then

        cur := cur * random(8);

    end;

    if cur > 0.8 then

    cur:= cur - 1/(random(10) + random(11) + random(7)) - 1/(random(10) + random(11) + random(7)) + 1/(random(10) + random(11) + random(7)) + 1/(random(10) + random(11) + random(7));

    if (cur = 0) or (cur > 1) then goto y;

    a[i] := cur;

  end;

  for i := 1 to 999 do

    for j := 1 to 999 do

      if a[j] > a[i] then swap(a[j], a[i]);

  for i := 1 to 999 do writeln(l, a[i]:0:16);

  close(l);

end.
4,4(90 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ