Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2014, 16:50   #1
Danteeee
 
Регистрация: 20.11.2014
Сообщений: 7
По умолчанию как в этой программе использовать меню через метки

Меню типа:1)input.data 2)list.data 3)work.data 4)exit
Суть самой программы:Создать массив записей, содержащий сведения о сдаче студентами сессии. Структура записи - индекс группы, ФИО студента, оценки по пяти экзаменах.И сделать выборку информации о студентах сдавшие сессию без троек.
Код:
Type
    tSession = Record
    Index : String;
    FIO:String;
    matem:1..5;
    litra:1..5;
    mova:1..5;
    fisika:1..5;
    history:1..5;
end;
Var

  stud:array of tSession;
  i,n:byte;
      begin
      Write('Введите количество Студентов: ');
    ReadLn(n);
    SetLength(stud, n); 
    Dec(n);
For i:=0 To n Do
with stud[i] do
      begin
writeln ('Введите индекс группы');
readln (stud[i].index);
  writeln ('Введите ФИО');
readln (stud[i].FIO);
  writeln ('Введите oценку за математику');
readln (stud[i].matem);
writeln ('Введите oценку за Литературу');
readln (stud[i].litra);
writeln ('Введите oценку за Украиский язык');
readln (stud[i].mova);
writeln ('Введите oценку за физику');
readln (stud[i].fisika);
writeln ('Введите oценку за историю');
readln (stud[i].history);
  end;
for i:=0 to n do
      begin
writeln('Группа: ', stud[i].index, '; ФИО: ',stud[i].FIO);
writeln('оценки за экзамены: ');
writeln('Математика: ',stud[i].matem,
'; Литература: ',stud[i].litra,'; Украиский язык: ',stud[i].litra,'; Физикa: '
,stud[i].fisika,'; История: ',stud[i].history);
end;
with stud do
begin
for i:=0 to n do
if (stud[i].matem and stud[i].litra and stud[i].mova and stud[i].fisika
 and stud[i].history)>3
then writeln('Студенты без троек','-',stud[i].FIO);
end;
end.
Danteeee вне форума Ответить с цитированием
Старый 20.11.2014, 16:54   #2
Вадим Вергун
Пользователь
 
Регистрация: 01.11.2014
Сообщений: 52
По умолчанию

Неужели у авторов этих олимпиад фантазия кончалась...
Вадим Вергун вне форума Ответить с цитированием
Старый 21.11.2014, 18:34   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Danteeee
А знаешь почему у тебя плохой преподаватель, и слушать его не нужно?
Не? А ты спроси его, если он расскажет всетки почему метковые переходы сейчас стараются не использовать то задай второй вопрос - откуда такое задание. А если он не ответит то лучше задумайся доверять ли ему, и чему он тебя научит.

Теперь по теме:
Код:
program Project1;
Type
    tSession = Record
    Index : String;
    FIO:String;
    matem:1..5;
    litra:1..5;
    mova:1..5;
    fisika:1..5;
    history:1..5;
end;
    label menu,inputdata,listdata,workdata;
Var

  stud:array of tSession;
  i,n:byte;
begin

menu:
writeln(
 'Выбери что нуна:'#13#10,
 '1) Ввод'#13#10,
 '2) Вывод'#13#10,
 '3) Непонятно что'#13#10,
 '4) Выход'#13#10
);
readln(n);

case n of
 1: goto inputdata;
 2: goto listdata;
 3: goto workdata;
 4: exit;
end;

inputdata:

    Write('Введите количество Студентов: ');
    ReadLn(n);
    SetLength(stud, n);
    Dec(n);
      For i:=0 To n Do
        with stud[i] do            begin
          writeln ('Введите индекс группы');
          readln (stud[i].index);
            writeln ('Введите ФИО');
          readln (stud[i].FIO);
            writeln ('Введите oценку за математику');
          readln (stud[i].matem);
          writeln ('Введите oценку за Литературу');
          readln (stud[i].litra);
          writeln ('Введите oценку за Украиский язык');
          readln (stud[i].mova);
          writeln ('Введите oценку за физику');
          readln (stud[i].fisika);
          writeln ('Введите oценку за историю');
          readln (stud[i].history);
        end;
goto menu;

listdata:
    for i:=0 to n do      begin
      writeln('Группа: ', stud[i].index, '; ФИО: ',stud[i].FIO);
      writeln('оценки за экзамены: ');
      writeln('Математика: ',stud[i].matem,
        '; Литература: ',stud[i].litra,'; Украиский язык: ',stud[i].litra,'; Физикa: '
          ,stud[i].fisika,'; История: ',stud[i].history);
    end;
goto menu;

workdata:
    for i:=0 to n do
     with stud[i] do  begin
     if (stud[i].matem and stud[i].litra and stud[i].mova and stud[i].fisika
      and stud[i].history)>3
     then writeln('Студенты без троек','-',stud[i].FIO);
    end;
goto menu;
end.
Имей ввиду там еще куча ошибок в программе. Я их не исправлял. Я просто показал как писать с прыжками.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.11.2014, 23:37   #4
Artsiom
Форумчанин
 
Аватар для Artsiom
 
Регистрация: 13.07.2012
Сообщений: 357
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
goto
Фу, какая гадость.
И то, что это гадость я понял после того как написал курсач, а потом его переписал - наново и по нормальному.
Artsiom вне форума Ответить с цитированием
Старый 23.11.2014, 00:14   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Фу, какая гадость.
Все гадость, если делать спустя рукава. Смысл в том что автор пожаловался на то что ему указали на отсутствие моска у его сенсея, о чем я и пытаюсь ему втолковать. Если сенсей не знает как правильно преподнести прыгающий код своим гакусеям, то такого препода надо к шведской стенке пятой точкой кверху поставить - ничему он не научит не имея знаний.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.11.2014, 19:12   #6
Danteeee
 
Регистрация: 20.11.2014
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Все гадость, если делать спустя рукава. Смысл в том что автор пожаловался на то что ему указали на отсутствие моска у его сенсея, о чем я и пытаюсь ему втолковать. Если сенсей не знает как правильно преподнести прыгающий код своим гакусеям, то такого препода надо к шведской стенке пятой точкой кверху поставить - ничему он не научит не имея знаний.
ну спасибо хоть и на этом)
Danteeee вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
исправьте ошибке в этой программе так чтобы она работала как в задании: owert Паскаль, Turbo Pascal, PascalABC.NET 2 06.06.2013 17:02
как составить блок-схему к этой программе??? owert Паскаль, Turbo Pascal, PascalABC.NET 1 05.06.2013 17:25
Приветы, не могу составить блок-схему к этой программе, не понимаю как работает? Пиф Общие вопросы C/C++ 1 10.03.2013 07:57
Как использовать свою кодировку в программе? The SCS Общие вопросы Delphi 9 23.01.2012 23:44
как подключить к основной программе файл с частью этой программы??? program2001 Паскаль, Turbo Pascal, PascalABC.NET 4 17.06.2011 15:09