Guest
Новичок
|
Удалите с углов доски 2nх2n по одной клеточке с противоположных углов. Покажите, что невозможно полностью покрыть эту доску фишками 1х2, так чтоб они не высовывались за края доски и не накрывали друг друга.
Я думаю, можно попробовать так: задаем размер доски(2nx2n),указываем, что n=[1...5], например. Программка должна работать так: мы задаем n с заданного промежутка, выводится графическое представление полученной доски и то, что задача нерешаема...
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 1 дек. 2007 18:31 | IP
|
|
KMA
Долгожитель
|
у меня 3 ошибки в одной строке...можно я покажу,что я у меня получилось?..просто других ошибок он не показывает,а эту я не понимаю...возможно,я не правильно задала процедуру.
Сразу бы показывала, чтобы время терять, на разрешения какие-либо... ведь может и другой участник помог бы.
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 2 дек. 2007 22:41 | IP
|
|
nia
Новичок
|
у меня возможности не было(((... type cost=record opt,rozn:real; end; sap=record firm,adres,tovar:string[10]; cena:cost; end; type fileOfSap=file of sap; var dbname:string='mydb.txt'; function addItem:sap; var _buf:sap; i,n:byte; begin with _buf do begin write('название фирмы: '); readln(firm); write('адрес: '); readln(adres); write('товар: '); readln(tovar); write('рознечная цена: '); readln(cena.rozn); write('оптовая цена: '); readln(cena.opt); end; addItem:=_buf; end; function tryResetFile(var f:fileOfSap):boolean; begin {$I-} reset(f); {$I+} if IOResult<>0 then tryResetFile:= false else tryResetFile:= true end; procedure showItem(item: sap); begin with item do writeln(firm:10, adres:10, tovar:10, cena.rozn:5, cena.opt:5); end; procedure cortInFileByCost(var f:fileOfSap); var _bufArray:array[1..100] of sap; _buf:sap; n,i,j:byte; begin if not tryResetFile(f) then begin write(' ошибка чтения файла! '); close(f); exit; n:=1; while not eof (f) do begin read(f,_buf); _bufArray[n]:=_buf; n:=n+1; end; n:=n-1; close(f); for i:=1 to n-1 do for j:=1 to n-1 do if _bufArray[j].cena.rozn>_bufArray[j+1].cena.rozn then begin _buf:=_bufArray[j]; _bufArray[j]:=_bufArray[j+1]; _bufArray[j+1]:=_buf; end; procedure menu;----в этой строке...ошибки var c:integer; s:string; f:sap; label start; begin start: clrscr; writeln('1 - новая запись'); writeln('2 - просмотр записи'); writeln('3 - выборка'); writeln('4 - выход'); write('выполнить: '); readln(c); if not (c in [1,2,3,4]) then goto start; case c of 4: exit; 3: begin write('введите наименование товара : '); readln(s); if tryResetFile then begin clrscr; writeln('----------------------------------------------------'); writeln('фирма адрес оптовая цена'); writeln('наименование товара цена '); writeln('------------------------------------'); while not eof(fil1) do begin read(fil1,per); if per.tovar=_findStr then showItem(per); end; end else writeln('ошибка чтения файла!'); close(fil1); 2: begin clrscr; if tryResetFile then begin clrscr; writeln('----------------------------------------------------'); writeln('фирма адрес оптовая цена'); writeln('наименование товара цена '); writeln('------------------------------------'); end; reset(fil1); i:=1; while not eof (fil1) do begin read(fil1,per); showItem(per); end; end else writeln('ошибка чтения файла! '); close(fil1); end; end; 1: begin clrscr; rewrite(fil1); writeln('сколько записей добавите: '); readln(n); clrscr; for i:=1 to n do write(fil1,addItem); close(fil1); end; begin assign(fil1,dbname); clrscr; writeln('нажмите ENTER для продолжения...'); readln; goto start; end; begin menu; end.
|
Всего сообщений: 7 | Присоединился: ноябрь 2007 | Отправлено: 2 дек. 2007 23:06 | IP
|
|
KMA
Долгожитель
|
To nia, BEGIN и END кто правильно ставить будет???
Code Sample:
procedure cortInFileByCost(var f:fileOfSap); var _bufArray:array[1..100] of sap; _buf:sap; n,i,j:byte; begin if not tryResetFile(f) then begin write(' ошибка чтения файла! '); close(f); exit; end {кто здесь end ставить будет?} n:=1; while not eof (f) do begin read(f,_buf); _bufArray[n]:=_buf; n:=n+1; end; n:=n-1; close(f); for i:=1 to n-1 do for j:=1 to n-1 do if _bufArray[j].cena.rozn>_bufArray[j+1].cena.rozn then begin _buf:=_bufArray[j]; _bufArray[j]:=_bufArray[j+1]; _bufArray[j+1]:=_buf; end; end; procedure menu;----в этой строке...ошибки
Цветом выделил, то что у тебя не поставлено (точнее соответствие). Вот тут у тебя и ошибки... Я просто быстренько пробежался, поэтому все это ошибки или нет сказать точно не могу. На будущее обязательно кроме кода, еще скидывай и сообщения выдаваемые компилятором (может для вас они ничего и не значат, а мне ориентироваться проще). (Сообщение отредактировал KMA 3 дек. 2007 16:47)
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 3 дек. 2007 16:43 | IP
|
|
nia
Новичок
|
в той строке он выдает: kur_3.pas(87,11) Error: Illegal expression kur_3.pas(87,11) Error: Illegal expression kur_3.pas(87,11) Fatal: Syntax error, ";" expected but "indentifier MENU" founded kur_3.pas(87,11) Fatal: Comrilation aborted
|
Всего сообщений: 7 | Присоединился: ноябрь 2007 | Отправлено: 3 дек. 2007 19:38 | IP
|
|
nia
Новичок
|
нет,это... ...стало ошибок еещщее больше!..
|
Всего сообщений: 7 | Присоединился: ноябрь 2007 | Отправлено: 3 дек. 2007 20:02 | IP
|
|
Dezmond
Новичок
|
Решите пазалуста, не могу решить, а то мне пипец=((. Переменной X присвоить 1, если элтменты массива В(40) образуют возрастающую последовательность и значение 0 в противном случае.
|
Всего сообщений: 2 | Присоединился: декабрь 2007 | Отправлено: 5 дек. 2007 13:47 | IP
|
|
Dezmond
Новичок
|
и попроще Дано натуральное число n(n<=99) Выяснить верно ли что n равно кубу суммы цифр числа n. заранее спасибо.
|
Всего сообщений: 2 | Присоединился: декабрь 2007 | Отправлено: 5 дек. 2007 13:52 | IP
|
|
Guest
Новичок
|
Здравствуйте! Подскажите пожалуйста как сделать в паскале чтобы процедура вызывала процедуру описанную после нее я попробовал так: Procedure A;Forward; Var ...... .... Begin B; Но почему то Паскаль все равно не видит процедуру B.... Пожалуйста напишите как это должно быть на самом деле...
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 8 дек. 2007 18:45 | IP
|
|
KMA
Долгожитель
|
Это никак не должно быть на самом деле, возьми BP, можешь Object Pascal там сказано одно единственное правило: "Все вызываемые процедуры должны быть описаны ДО того как вызываются". Кому вообще такое надо??? Это же полный идиотизм, даже в том же TASM крайне не рекомендуется давать ссылки вниз. Перекопируй код, да перенеси выше. Ctrl+Insert (Копировать) и Shift+Insert (Вставить). Собственно и никаких проблем не будет.
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 9 дек. 2007 15:01 | IP
|
|
|