С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/25: Рейтинг темы: голосов - 25, средняя оценка - 4.68
0 / 0 / 1
Регистрация: 14.11.2010
Сообщений: 4
1

Входной файл

15.11.2010, 18:07. Показов 4760. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
На вход программе подаются сведения о сдаче экзаменов учениками 11-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат:
<Фамилия> <Имя> <оценки>,
где <Фамилия> – строка, состоящая не более чем из 20 символов, <Имя> – строка, состоящая не более чем из 15 символов, <оценки> – через пробел три целых числа, соответствующие оценкам по пятибалльной системе. <Фамилия> и <Имя>, а также <Имя> и <оценки> разделены одним пробелом.

Пример входной файла:

5 {Кол-во учеников}
Иванов Петр 4 5 3
Андреев Сергей 5 1 4
Бил Гейтс 5 5 5
Стив Балмер 5 4 5
Стивен Хокинг 5 5 5

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

P.S. В интернет много решении, но они все без работы с файлами, надо полноценную программу которая работает с файлами.

Добавлено через 3 минуты
В вашем форуме не нашел ответа на свой вопросы о том как реализовать программу... так что оброщаюсь к вам
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.11.2010, 18:07
Ответы с готовыми решениями:

Входной и выходной файл. Исправить код программы
Имя входного файла: b.in Имя выходного файла: b.out Два сотрудника подали своему начальнику...

Входной замок Лисы Алисы
Входной замок Лисы Алисы работает следующим образом: если введено натуральное число, которое меньше...

Удалить четные по порядку слова в входной строке

Построить односвязный список из входной последовательности чисел и вывести её в порядке не убывания
Построить односвязный список из входной последовательности чисел и вывести ее в порядке не убывания.

1
0 / 0 / 1
Регистрация: 14.11.2010
Сообщений: 4
19.11.2010, 22:23  [ТС] 2
Лучший ответ Сообщение было отмечено Ruzel как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
var p:array[1..100] of record
      fam:string;
      name:string;
      sum:integer;
    
      end;
    c:char;
    i,j,N,s1,s2,s3,m:integer;
 
begin
 
  Assign (Input,'a.txt');
  reset(Input);
  Assign(OutPut,'b.txt');
  rewrite(OutPut);
   readln(N);
  for i:=1 to N do
    
    begin
     
     p[i].fam:='';
       repeat
          read(c);
          p[i].fam:=p[i].fam+c
       until c=' '; {считана фамилия}
       
     p[i].name:='';
       repeat
          read(c);
          p[i].name:=p[i].name+c
       until c=' '; {считано имя}
   
     p[i].sum:=0;   
     for j:=1 to 3 do
        begin
         read(m);
         p[i].sum:=p[i].sum+m
        end; {подсчитана сумма баллов}
     readln;
    end;
 
  s1:=0; s2:=0; s3:=0;
  
  for i:=1 to N do
  
  begin
      
     if p[i].sum>s1 then
        begin
          s3:=s2; s2:=s1;
          s1:=p[i].sum
        end else
     
     if p[i].sum>s2 then
        begin
          s3:=s2; s2:=p[i].sum
        end else
      
     if p[i].sum>s3 then s3:=p[i].sum;
   end;
  
    for i:=1 to N do
    if p[i].sum>=s3 then  writeln(p[i].name);
    
    Close(OutPut);
end.
0
19.11.2010, 22:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2010, 22:23
Помогаю со студенческими работами здесь

Входной и выходной файлы
нужно сделать, чтобы переменная s бралась из файла и чтобы результат программы выводился в...

Вывести латинскую букву, встречающуюся во входной последовательности наибольшее число раз
На вход программе подаётся последовательность символов, заканчивающаяся символом &quot;#&quot;. Другие...

Входной/Выходной файл
выдает ошибку &quot;ошибка ввода вывода 103 файл не открыт&quot; вот код program pr; var a,c:text;...

Из входной последоватнльности чисел построить список
из входной последоватнльности чисел построить список в котором необходимо определить номера...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru