Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 25

Проверьте, пожалуйста, программы на коректность работы!

08.11.2009, 16:30. Показов 499. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Условие:
1.Ввести массив записей, каждый из которых содержит сведения о фамилии автора и названии книги. Построить новый массив записей, который содержит дополнительно сведения о годе издания. Год издания берется из массива записей, который содержит название книги и год.

2.Создать массив записей, структура которого:
Художественное произведение:
Проза: Автор Название Жанр Объем
Поэзия: Автор Название Жанр Размер
Живопись: Автор Название Направление Жанр
1) Вывести авторов, которые работали в жанрах прозы, поэзии и живописи. 2) Определить количество живописных произведений в жанре натюрморт автора, фамилия которого введена из клавиатуры. 3) Изъять из списка авторов, которые написали романы.

Код первой проги:
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
Program lab1;
uses crt;
type    famnaz=record
    fam : string;
    naz : string;
    end;
        nazgod=record
    naz : string;
    god : string;
    end;
        allinf=record
    fam : string;
    naz : string;
    god : string;
    end;
 
var
  mas1: array[1..10] of famnaz;
  mas2: array[1..10] of nazgod;
  mas3: array[1..10] of allinf;
  i,j,i1:integer;
 
PROCEDURE ADD1;
begin
  i:=0;
  repeat
     i:=i+1;
      with mas1[i] do
        begin
         writeln ('input fam:');
         readln(fam);
         writeln ('input naz');
         readln(naz);
         end;
      writeln('continue y/n');
  until readkey='n';
end;
 
PROCEDURE ADD2;
begin
  i:=0;
  repeat
     i:=i+1;
      with mas2[i] do
        begin
         writeln ('input naz');
         readln (naz);
         writeln ('input god:');
         readln(god);
         end;
      writeln('continue y/n');
  until readkey='n';
write(' ',mas2[i].naz);
write(' ',mas2[i].god);
end;
 
procedure add3;
begin
  writeln;
  writeln('---fam------------naz----------god----');
  for j:= 1 to i do
  begin
   with mas3[j] do
   begin
    mas3[j].fam := mas1[j].fam;
    mas3[j].naz := mas1[j].naz;
   end;
    for i1 := 1 to i do
      begin
      if mas1[i].naz = mas2[i1].naz then
        begin
        mas3[i].god := mas2[i1].god;
       end;
     end;
  if mas3[i].god = '' then
  begin
  mas3[i].god := 'not found';
  end;
write(' ',mas1[i].fam);
write(' ',mas1[i].naz);
write(' ',mas3[i].god);
writeln;
end;
end;
begin
add1;
add2;
add3;
readln;
end.
Код второй проги:
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
program lab2;
uses crt;
type zap=record
     author, title,genre:string;
     case tag: integer of
      1:(volume:integer);
      2:(size:string);
      3:(direction:string);
      end;
var art_work:array [1..10] of zap;
    ch:char;
    i,j:integer;
 
Procedure input;
begin
repeat
 i:=i+1;
with art_work[i] do
 begin
  write('enter type of art_work: 1-prose, 2-poetry, 3-painting');
  readln(tag);
   case tag of
    1:begin
       write('author of prose'); readln(author);
       write('title of prose'); readln(title);
       write('genre of prose'); readln(genre);
       write('volume'); readln(volume);
      end;
    2:begin
       write('author of poetry'); readln(author);
       write('title of poetry'); readln(title);
       write('genre of poetry'); readln(genre);
       write('size'); readln(size);
      end;
    3:begin
       write('author of painting'); readln(author);
       write('title of painting'); readln(title);
       write('genre of painting'); readln(genre);
       write('direction'); readln(direction);
      end;
   end;
end;
 writeln('continue? y/n'); ch:=readkey;
until ch='n';
end;
 
procedure output;
begin
 for j:=1 to i do
  with art_work[j] do
   case tag of
   1: begin
    writeln('prose: ',author,' ',title,' ',genre,' ',volume); readln;
    end;
   2: begin
    writeln('poetry: ',author,' ',title,' ',genre,' ',size); readln;
    end;
   3: begin
    writeln('painting: ',author,' ',title,' ',genre,' ',direction); readln;
    end;
   end;
end;
 
Procedure task1;
begin
 writeln('author of prose, poetry, painting');
 readln;
 for j:=1 to i do
 begin
  write(art_work[j].author);
  readln;
 end;
end;
 
Procedure task2;
var kol:integer;
    tmp:string;
begin
clrscr;
 writeln('enter author of painting'); readln(tmp);
  kol:=0;
 for j:=1 to i do
 begin
  if art_work[j].genre='naturmort' then
     if art_work[j].author=tmp  then
         kol:=kol+1;
 end;
 writeln('number of works',kol);
 readln;
end;
 
Procedure task3;
begin
clrscr;
 writeln('author of not roman');
 clrscr;
 readln;
 for j:=1 to i do
 begin
 if art_work[j].genre<>'roman' then
   begin
    write(art_work[j].author);
    readln;
   end;
 end;
end;
 
Procedure endprog;
begin
clrscr;
 gotoxy(15,10); writeln('Do you want to exit from program? y/n');
 ch:=readkey;
 if ch='y' then halt(0);
end;
 
Procedure menu;
begin
 repeat
 clrscr;
 gotoxy(21,3); writeln('MENU');
 gotoxy(15,5); writeln('1. Input database');
 gotoxy(15,7); writeln('2. Show database');
 gotoxy(15,9); writeln('3. Author');
 gotoxy(15,11); writeln('4. Number of work');
 gotoxy(15,13); writeln('5. Author of not roman');
 gotoxy(15,15); writeln('6. Exit');
 ch:=readkey;
 case ch of
   '1':input;
   '2':output;
   '3':task1;
   '4':task2;
   '5':task3;
   '6':endprog;
 end;
 until ch='6';
end;
 
begin
clrscr;
 i:=0;
 menu;
end.
Если есть какие-то неточноти в коде программ - просьба подправить. Заранее спасибо!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.11.2009, 16:30
Ответы с готовыми решениями:

Объясните пожалуйста суть работы программы
Тут мне ребята помоги с задачей, но не объяснили суть работы задачи. var i,n:integer; {функция НОД} function...

Проверьте пожалуйста блок-схему и код программы
Проверьте пожалуйста блок-схему и код программы. Задание ниже, 4 вариант.

Проверьте, пожалуйста, работоспособность программы
Добрый вечер! Запуталась с тем, как запустить программу из нескольких .M файлов. Прилагается инструкция на английском языке, но видимо я...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.11.2009, 16:30
Помогаю со студенческими работами здесь

Пожалуйста, проверьте правильность программы
Всем здравствуйте, для решения задачи, я написала программу на языке Си, однако в Visual Studio у меня не получается её запустить из за...

Проверьте, пожалуйста, программку (Анализ работы магистрали передачи данных)
Уважаемые форумчане, ниже изложено условие задачи и мой вариант ее решения. Скажите, пожалуйста, правильно ли она решена? Заранее...

Проверьте, пожалуйста, код программы и исправьте, если нужно
Рассматривая байт как набор логических значений x7 x6 x5 x4 x3 x1 x0 (true -1, false - 0), вычислить логическую формулу f=(x7 &amp; x6...

проверьте пожалуйста еще один код программы, кто может
проверьте пожалуйста еще один код программы(кто может вот условие: программа должна проверить число является ли оно простым или нет? ...

Проверьте, пожалуйста, правильность программы записи диапазона чисел в файл
Создать файл и записать в него вещественные числа из диапазона от a до b с шагом h. Вывести на экран все компоненты файла с нечетными...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru