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

Организовать файл,состоящий из n целых чисел.определить сумму чисел файла.

👇
Ответ:
nastyamagiao
nastyamagiao
23.10.2021
Насколько я вас понял,вам нужно найти сумму N чисел из файла.
4,4(90 оценок)
Открыть все ответы
Ответ:
milana00071
milana00071
23.10.2021
Пусть ученик неуспевающий, если сумма его отметок меньше 2+2+3+3=10.

var
  count_losers, sum, current_sum, mark, i, j, n: integer;

begin
  read(n);
  count_losers := 0;
  for i := 1 to n do
  begin
    current_sum := 0;
    for j := 1 to 4 do
    begin
      read(mark);
      current_sum := current_sum + mark;
    end;
    if current_sum < 10 then
      inc(count_losers);
    sum := sum + current_sum;
  end;
  writeln('Неуспевающих учеников: ', count_losers);
  writeln('Средняя сумма четырёх отметок: ', sum / n);
  writeln('Средняя отметка: ', sum / 4 / n);
end.

Пример ввода:
4
2 2 2 5
2 2 5 2
2 5 2 2
3 2 2 2

Пример вывода:
Неуспевающих учеников: 1
Средняя сумма четырёх отметок: 10.5
Средняя отметка: 2.625
4,5(7 оценок)
Ответ:
alekseykraynov
alekseykraynov
23.10.2021
Для того, чтобы узнать, не встречалось ли 20-е число раньше, надо помнить, какие числа были до этого. Так что без массива с меньшим размером, чем 19, не обойтись (на самом деле это так, только если в каждом элементе массива хранить только одно число. Но мы так и будем делать). 

Алгоритм для решения задачи выберем простой: записываем все предыдущие числа в массив и для каждого следующего числа проходим по массиву.

var
  a: array[1..19] of byte;
  i, j, t: byte;

begin
  for i := 1 to 20 do
  begin
    read(t);
    if i < 20 then a[i] := t;
    for j := 1 to i - 1 do
      if a[j] = t then
        t := 0;
    if t > 0 then write(t, ' ');
  end;
end.

Пример ввода:
1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10

Пример вывода:
1 2 3 4 5 6 7 8 9 10
4,5(44 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ