В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык

Паскаль во входном файле in.txt записаны данные в формате: фамилия, оценка за язык, оценка за , оценка за обществознание. вывести в файл out.txt фамилии учеников, зачисленных в 10 профильный класс (условие зачисления - нет ни одной тройки).

Ответ:
Swim1223
Swim1223
06.10.2020 21:04
Пусть строки файла in.txt имеют вид
ФАМИЛИЯ X Y Z
где X,Y,Z - оценки.

1. Современное решение в пять строчек (по сути - один оператор)

// PascalABC.NET 3.3, сборка 1540 от 16.09.2017
// Внимание! Если программа не работает, обновите версию!

begin
  WriteAllText('out.txt',ReadLines('in.txt').
      Select(s->s.Split).Where(x->(x[1]<>'3') and (x[2]<>'3') and (x[3]<>'3')).
      Select(x->x[0]).JoinIntoString(NewLine))
end.

2. Классическое "школьное решение" в стиле языка Турбо Паскаль тридцатилетней давности

var
  s,f:string;
  p:integer;
  f1,f2:Text;
begin
  Assign(f1,'in.txt');
  Assign(f2,'out.txt');
  Reset(f1);
  Rewrite(f2);
  while not Eof(f1) do begin
    Readln(f1,s);
    p:=Pos(' ',s);
    f:=Copy(s,1,p-1);
    if (s[p+1]<>'3') and (s[p+3]<>'3') and (s[p+5]<>'3') then
      Writeln(f2,f)
    end;
  Close(f1);
  Close(f2)
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?