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

Программа с применением указателей и очереди

09.11.2014, 21:58. Показов 1151. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Составить программу, в которой предусмотреть ввод исходной информации о четырех студентах: ФИО, год рождения, год поступление в универ, оценки за первый семестр: физика,математика, информатика;
Сформировать очередь , в которую записать введенную информацию.
Выводить на экран каждую запись очереди, затем записывать в файл и удалять из очереди.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.11.2014, 21:58
Ответы с готовыми решениями:

Динамическое выделение памяти и обработка массива с применением указателей
Уплотнить заданную матрицу, удалив из неё строки и столбцы, заполненные нулями. Найти номер первой...

Указатели. Переписать программу для одномерных массивов с применением указателей
Составить программу нахождения произведения отрицательных (положительных) элементов массива

Как реализовать имитацию работы указателей с применением массивов char. Задача Лафоре
Добрый день! Столкнулся с задачей из книги Лафоре, гл. 10 зад.12. Читаю. Или написано непонятно,...

Перемещение чисел в очереди с помощью указателей
Создать очередь 20 случайных чисел в диапазоне от минус 60 до 60. Напечатать ее. ...

1
Эксперт Pascal/Delphi
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
10.11.2014, 18:09 2
Лучший ответ Сообщение было отмечено АРТЕ как решение

Решение

Запись в файл попробуйте реализовать самостоятельно.

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
{ Составить программу, в которой предусмотреть ввод исходной информации о
четырех студентах: ФИО, год рождения, год поступление в универ, оценки
за первый семестр: физика,математика, информатика;
Сформировать очередь , в которую записать введенную информацию.
Выводить на экран каждую запись очереди, затем записывать в файл и
удалять из очереди.}
 
uses
  Crt;
const
  n=4;
type
  student=record
    fio:string[64];
    god_rozh:integer;
    god_post:integer;
    ph_ocenka, mat_ocenka, i_ocenka:integer
  end;
 
type
   PComp= ^Comp;
   Comp= record
    sD:student;
    pNext:PComp
   end;
var
  pBegin, pEnd: PComp;
  sC,stud:student;
  i:integer;
 
Procedure CreateQueue(var pBegin,pEnd: PComp; var sC: student);
begin
  New(pBegin);
  pBegin^.pNext:=NIL;
  pBegin^.sD:=sC;
  pEnd:=pBegin
end;
 
Procedure AddQueue(var pEnd:PComp; var sC:student);
var
  pAux: PComp;
begin
  New(pAux);
  pAux^.pNext:=NIL;
  pEnd^.pNext:=pAux;
  pEnd:=pAux;
  pEnd^.sD:=sC
end;
 
Procedure DelQueue(var pBegin: PComp; var sC: student);
begin
  sC:=pBegin^.sD;
  pBegin:=pBegin^.pNext
end;
 
begin
  Clrscr;
  writeln('Введите первую запись: ');
  with sC do
    begin
      write('Введите ФИО: '); readln(fio);
      write('Введите год рождения:    '); readln(god_rozh);
      write('Введите год поступления: '); readln(god_post);
      write('Введите оценку по математике:  '); readln(mat_ocenka);
      write('Введите оценку по физике:      '); readln(ph_ocenka);
      write('Введите оценку по информатике: '); readln(i_ocenka);
    end;
 
  CreateQueue(pBegin,pEnd,sC);
  writeln('Введите еще записей: ',n-1);
  for i:=1 to 3 do
    begin
      with sC do
        begin
          write('Введите ФИО: '); readln(fio);
          write('Введите год рождения:    '); readln(god_rozh);
          write('Введите год поступления: '); readln(god_post);
          write('Введите оценку по математике:  '); readln(mat_ocenka);
          write('Введите оценку по физике:      '); readln(ph_ocenka);
          write('Введите оценку по информатике: '); readln(i_ocenka);
        end;
      AddQueue(pEnd,sC)
    end;
  clrscr;
  writeln('Вывод сформированной очереди: ');
  i:=1;
  repeat
    writeln('Запись № ',i);
    with sC do
      begin
        writeln('ФИО: ',fio);
        writeln('Год рождения:    ',god_rozh);
        writeln('Год поступления: ',god_post);
        writeln('Оценка по математике:  ',mat_ocenka);
        writeln('Оценка по физике:      ',ph_ocenka);
        writeln('Оценка по информатике: ',i_ocenka);
      end;
      inc(i);
    DelQueue(pBegin,sC);
  until pBegin=NIL;
  readln;
end.
0
10.11.2014, 18:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.11.2014, 18:09
Помогаю со студенческими работами здесь

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

Программа с применением функции
Здравствуйте! Нужна помощь с написанием программы. Программа с помощью функции принимает от...

Программа с применением массива
Помогите сделать программу с применением массива в С++. Условие: Втсавить число 0 в середину...

Многомодульная программа с применением функции
Всем привет. Помогите, пожалуйста, решить проблему, которая возникла при создании многомодульной...


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

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