Предлагаю так:
- выкладываем сюда куски кода, алгоритмы, идеи по решению задач etc.
- если совсем туго и не можешь написать код, не тырить в тупую, а хотя бы изменить под свой стиль письма(+заменить переменные и тд)
- не выкладывать заведомо неправильный или опасный код
Все.
ДЗ прогеров
Сообщений 1 страница 7 из 7
Поделиться12008-01-11 22:08:38
Поделиться22008-01-11 22:21:45
Задачи для подготовки к самостоятельной работе Двумерные Массивы. Сделал все 9 задач. У кого какие вопросы, пишете))
Поделиться32008-01-12 18:02:11
Как делать прогу со змейкой?
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
Поделиться42008-01-14 16:09:38
Ну, вот собственно примерно так. Только код недоконца работающий, т.к. если кол-во строк меньше чем кол-во столбцов, то она глючит((, но это наверно уже вы сможете доделать и сами. и еще, в главном цикле написано x:=1 to kol, это тоже немного не правильно, но на работу программы не влияет.
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
const M=10; N=10;
type
T_Mas=array[1..M,1..N] of integer;
var
mas: T_Mas;
kol,kol2: integer;
i,j,k,x: integer;
procedure PrintMass(mas: T_mas; kol,kol2: integer);
var
i,j: integer;
begin
for i:=1 to kol do begin
for j:=1 to kol2 do begin
write(mas[i,j]:4);
write(' ');
end;
writeln;
end;
end;
begin
Readln(kol); //кол-во строк
Readln(kol2); //кол-во столбцов
k:=0;
for x:=1 to kol do begin
for i:=1+k to kol2-k do mas[1+k,i]:=mas[1+k,i-1]+1;
for j:=2+k to kol-k do mas[j,kol2-k]:=mas[j-1,kol2-k]+1;
for i:=kol2-1-k downto 1+k do mas[kol-k,i]:=mas[kol-k,i+1]+1;
for j:=kol-1-k downto 2+k do mas[j,1+k]:=mas[j+1,1+k]+1;
inc(k);
end;
PrintMass(mas,kol,kol2);
readln
end.
Поделиться52008-01-24 21:58:40
Спс
А как сделать красный шрифт в графическом режиме?
Поделиться62009-04-03 11:36:13
program schitalochka;
{$APPTYPE CONSOLE}
uses
SysUtils;
type PElem = ^pt; {структуры}
pt = record
hum: integer; {номер человека}
next: PElem; {указатель на следующего}
end;
var first, krug, qwer: PElem;
i,N,shag: integer;
begin
first:=nil;
krug:=nil;
write('vvedite kol-vo ludey-');
readln(N);
write('vvedite kol-vo shag - ');
readln(shag);
for i:=1 to N do
begin
if first = nil then
begin
new(first);
first^.hum:=i;
first^.next:=nil;
krug:=first;
end
else
begin
new(krug^.next);
(krug^.next)^.hum:=i;
(krug^.next)^.next:=nil;
krug:=krug^.next;
end;
end;
krug^.next:=first;
krug:=first;
while krug^.next<>krug do
begin
for i:=2 to shag-1 do krug:=krug^.next;
qwer:=krug^.next;
krug^.next:=qwer^.next;
krug:=krug^.next;
writeln(qwer^.hum,' --vyletel');
dispose(qwer);
end;
writeln('v kontse ostalsia tolko....-- ',krug^.hum);
readln;
end.
Поделиться72009-04-10 01:57:13
Хех, теперь видимо моя очередь))) выкладываю прогу со стеком. Прога работает во всех случаях кроме одного: если количество закрывающихся скобок одного типа будет больше чем кол-во открывающихся того же типа(например: {{}}}}}}}}) , то прога просто аварийно завершиться, почему это происходит - видно из кода, но ничто не мешает вам это исправить))) итак код:
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
type pt= ^elem;
elem=record
data:string;
next:pt
end;
procedure Ins_begin(var first:pt; el:string);
var new_first : pt;
begin
New(new_first);
new_first^.data := el;
new_first^.next := first;
first := new_first;
end;
var first:pt;
s: string;
i: integer;
begin
Readln(s);
if (s[1]=')') or (s[1]=']') or (s[1]='}') then write('neverno') else begin
for i:=1 to length(s) do
begin
if (s[i]='(') or (s[i]='[') or (s[i]='{') then Ins_begin(first,s[i]);
if ( (s[i]=')') and (first^.data='(')) or ((s[i]=']') and (first^.data='[')) or ((s[i]='}') and (first^.Data='{'))then first:=first^.Next;
end;
if first=nil then write('verno') else write('neverno');
end;
readln
end.