|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.12.2008, 20:34 | #1 |
Пользователь
Регистрация: 22.12.2008
Сообщений: 13
|
Ошибка в тексте программы с пользовательским модулем
Решил забачу, но она некоректно выполняет 1 и 2 условия(см.условие). КТО В СИЛАХ ПОДКИНЬТЕ ИДЕЮ. СПАСИБО.
Условие: Для данных, которые отражены в таблице, разработать программу, которая обеспечивает: • добавление новых строк в таблицу; • удаление строки с заданным номером из таблицы; • вывод на экран информации, которая сохраняется в строке с заданным номером; • вывод на экран всей таблицы. Программа должна состоять, как минимум, из двух файлов: в первом файле должна находится главная программа, функция которой – выбор в диалоговом режиме одного из вышеприведенных действий, второй файле – модуль, который содержит функции, которые реализуют действия над строками. Собственно текст программы: program L13Z1; uses zapis; var n,i,z,h,j,c:integer; Begin h:=3; Write('Vvedit chislo:1-Dobavlenie stroki, 2-Udalenie stroki, 3-Vivod stroki, 4-Vivod tablici, 5-Vihod->');Read(n); a[1].naimenovanie:='Flanec'; a[1].tip:='Z'; a[1].kolichestvo:=3; a[1].ves:=450; a[2].naimenovanie:='Perehodnik'; a[2].tip:='P'; a[2].kolichestvo:=8; a[2].ves:=74; a[3].naimenovanie:='Stanica'; a[3].tip:='O'; a[3].kolichestvo:=1; a[3].ves:=117050; if (n<0) or (n>5) then write('Neverno vvedeno chislo, vvedite ego zanovo libo vikinte komputer)))))))') else begin if n=4 then vivodT(i); if n=3 then begin vivodS(c); end; if n=1 then begin novayaS(i); h:=h+1; end; if n=2 then begin del(i,h); end else begin write(a[i].Naimenovanie:10); write(' ',a[i].tip:4); write(' ',a[i].kolichestvo:11); write(' ',a[i].Ves:15); writeln; end; if n=5 then halt; end; readln; readln; end. И модуль к ней: unit zapis; interface type Vedomost=record Naimenovanie:string; tip:string; kolichestvo:integer; Ves:longint; end; var Detali:Vedomost; a:array[1..100] of Vedomost; i,n,h,c,m,z,k,e:integer; procedure del(h,i:integer); procedure novayaS(i:integer); procedure vivodS(c:integer); procedure vivodT(i:integer); implementation *******Первая ошибка***** procedure del; var z:integer; begin write('Vvedite nomer stroki, kotoruju x0tite udalit-->'); readln (z); Writeln('Naimenovanie|tip|kolichest vo|Ves 1 detali(g)'); for i:=z to h-1 do begin a[i].naimenovanie:=a[i+1].naimenovanie; a[i].tip:=a[i+1].tip; a[i].kolichestvo:=a[i+1].kolichestvo; a[i].ves:=a[i+1].ves; end; for i:=1 to h-1 do begin write(a[i].Naimenovanie:10); write(' ',a[i].tip:4); write(' ',a[i].kolichestvo:11); write(' ',a[i].Ves:15); end; end; ********** *******Вторая ошибка****** procedure novayaS; begin writeln(' Vvedite dannye novoj stroki:'); Write('Vvedite Naimenovanie detali->');read(a[i].naimenovanie); Write('Vvedite tip detali->');read(a[i].tip); Write('Vvedite kolichestvo detaley->');read(a[i].kolichestvo); Write('Vvedite ves 1 detali v grammah->');read(a[i].ves); Writeln('Naimenovanie|tip|kolichest vo|Ves 1 detali(g)'); for i:=1 to 4 do begin if i=4 then begin write(a[4].Naimenovanie:10); write(' ',a[4].tip:4); write(' ',a[4].kolichestvo:11); write(' ',a[4].Ves:15); writeln; end else begin write(a[i].Naimenovanie:10); write(' ',a[i].tip:4); write(' ',a[i].kolichestvo:11); write(' ',a[i].Ves:15); writeln; end; end; readln; end; *********** procedure vivodS; var i:integer; begin write('Vvedite N stroki dlja vyvoda-->');readln(c); i:=c; Writeln('Naimenovanie|tip|kolichest vo|Ves 1 detali(g)'); write(a[i].Naimenovanie:10); write(' ',a[i].tip:4); write(' ',a[i].kolichestvo:11); write(' ',a[i].Ves:15); writeln; readln; end; procedure vivodT; begin Writeln('Naimenovanie|tip|kolichest vo|Ves 1 detali(g)'); for i:=1 to 3 do begin write(a[i].Naimenovanie:10); write(' ',a[i].tip:4); write(' ',a[i].kolichestvo:11); write(' ',a[i].Ves:15); writeln; end; readln; end; end. Последний раз редактировалось zonclayv; 22.12.2008 в 20:42. |
22.12.2008, 21:39 | #2 |
Пользователь
Регистрация: 22.12.2008
Сообщений: 13
|
Печально...что никто не может помочь((((
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка в коды программы | Claster | Помощь студентам | 4 | 12.11.2008 17:44 |
[C++] ошибка в коде программы!! | jazzben | Помощь студентам | 12 | 27.09.2008 19:25 |
Ошибка при запуске программы | MAcK | Общие вопросы .NET | 5 | 14.08.2008 15:12 |
Ошибка и падение (выход) Excel при выполнении сложной программы на VBA | Serge_Bliznykov | Microsoft Office Excel | 6 | 13.08.2008 16:50 |
Ошибка при инсталляции программы | фЁдОр | Помощь студентам | 5 | 24.12.2007 11:27 |