Новые сообщения · Правила  
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Модератор форума: Berestovskiy  
Помощь с паскалем!Срочно надо!!!
Quote (Berestovskiy)
Согласен, часто тяжко преподу доказать что так правильней и т.д.
Но после того как препод с тобой согласится - понимаешь:"Оно того стоило" :3


Она меня даже слушать небудет)))) только настрою её против себя...
41 | Автор: pashu83 | 2012-02-25, 18:36   |  Репутация: [ + 0 ]
Будет)

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
42 | Автор: Berestovskiy | 2012-02-25, 18:55   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
42 | Автор: Berestovskiy | 2012-02-25, 18:55   |  Репутация: [ + 211 ]
Quote (pashu83)
var
a:array[1..20]of string[70];
s:string;
i:integer;
begin
for i:=1 to 20 do
readln(a[i]);
for i:=1 to 20 do begin
s:=a[i];
while (ord(s[1])>48)and(ord(s[1])<57) do
delete(s,1,1);
a[i]:=s;
end;
for i:=1 to 20 do
writeln(a[i]);
end.

это ЧП эта программа не работает, если вводишь строку полностью состоящую из цифр....Она зависает...
43 | Автор: pashu83 | 2012-03-06, 21:24   |  Репутация: [ + 0 ]
Попробуй так) :

for i:=1 to 20 do begin
s:=a[i]+' ';


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
44 | Автор: Berestovskiy | 2012-03-06, 21:42   |  Репутация: [ + 211 ]
Quote (Berestovskiy)
Попробуй так) :

for i:=1 to 20 do begin
s:=a[i]+' ';


Сделал вот так:
program pasha10;
var
a:array[1..20]of string[70];
s:string;
i:integer;
begin
writeln('‚‚…„€’… ЊЂ‘‘€‚ ‘’ђЋЉ ');
i:=1;
while (not EoF)and(i<20) do begin
readln (a[i]);
i:=i+1; end;
for i:=1 to 20 do begin
while (ord(a[i,1])>48)and(ord(a[i,1])<57) and (length(a[i])>0) do
delete(a[i],1,1);
end;
for i:=1 to 20 do
writeln(a[i]);
end.

тепер всё работает, но если строка состоит только из цифр он её полностью удаляет и на её месте остаётся пустая строка, а надо чтобы они сдвинулись....
45 | Автор: pashu83 | 2012-03-07, 17:11 | Изменено: pashu83 - Ср, 2012-03-07, 17:12   |  Репутация: [ + 0 ]
"Спасибо" принимается в виде повышения репутации ( Зелёный плюсик:) ).

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
46 | Автор: Berestovskiy | 2012-03-07, 19:50   |  Репутация: [ + 211 ]
Здравствуйте. У меня вот такая вот проблемка с Turbo Pascal
тема : ПРОГРАММИРОВАНИЕ ЗАДАЧ ОБРАБОТКИ СИМВОЛЬНЫХ ДАННЫХ
Задание:


вот что я написал

Code
Program lab10;
Const  A='{'; B='}';
          n=6;
Type mas=array[1..n] of string[70];
Var str,rez,poz:mas; i,v,x,l,p,k:byte;

Begin
Writeln('Please Enter Strings');
For i:=1 to n do begin
write('Stroka: '); Readln(str[i]); end;
For i:=1 to n do begin
l:=length(str[i]);
p:=pos(A,str[i]);
k:=pos(B,str[i]);
If (p=0) then writeln('Commenttarii otsytstvyut') else
if (p=0) and (k>=0) then writeln('Commenttarii otsytstvyut')else
begin    
rez[i]:=copy(str[i],p,k);
delete(str[i],p,k);
x:=pos(A,str[i]);
v:=pos(B,str[i]);
If x>v then begin    
poz[i]:= copy(str[i],x,v);
rez[i]:= rez[i]+poz[i];
writeln('coment:', rez[i]); end else
writeln('coment:', rez[i]);
end;
end;
end.

Проблема в том что когда я ввожу строку вида:
Quote
}text{

Программа считает её комментарием и выводит:
Quote
coment: {}


Помогите плиз решить эту проблему. Заранее спасибо.
47 | Автор: Gernsback | 2012-03-13, 15:06 | Изменено: Gernsback - Вт, 2012-03-13, 16:33   |  Репутация: [ + 0 ]
47 | Автор: Gernsback | 2012-03-13, 15:06 | Изменено: Gernsback - Вт, 2012-03-13, 16:33   |  Репутация: [ + 0 ]
Пример ввода-вывода. напишу код

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
48 | Автор: Berestovskiy | 2012-03-13, 18:16   |  Репутация: [ + 211 ]
Quote (Berestovskiy)
Пример ввода-вывода. напишу код


http://s019.radikal.ru/i615/1203/d1/10ed8c4d8d2a.jpg

т.е. я ввожу строки ( не обязательно с комментариями )
если в тексте есть символы "{" и "}" то они сохраняются в результирующий массив.
в строке может быть больше 1го комментария.
пример ввода:
строка 1: 1213{com{com2{13}}}
строка 2: } ewqeq {
строка 3: }ewqe
строка 4: {qweqwe
строка 5: {wqeqwqwe{{{{{{QWEqwe}
результат должен быть таким
коммент 1: {com{com2{13}}}
коммент 2: комментария нет
коммент 3: комментария нет
коммент 4: комментария нет
коммент 5: {wqeqwqwe{{{{{{QWEqwe}
49 | Автор: Gernsback | 2012-03-13, 18:31   |  Репутация: [ + 0 ]
var
a,s:string;
i,q,w:integer;
begin
readln(s);
q:=pos('{',s);
if q<>0 then begin
if pos('}',s)<>0 then
for i:=1 to length(s) do
if s[i]='}' then w:=i;
if q<w then
a:=copy(s,q,w);
writeln(a);
end;
if a='' then writeln('komentov net');
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
50 | Автор: Berestovskiy | 2012-03-13, 18:56   |  Репутация: [ + 211 ]
Quote (Berestovskiy)
var
a,s:string;
i,q,w:integer;
begin
readln(s);
q:=pos('{',s);
if q<>0 then begin
if pos('}',s)<>0 then
for i:=1 to length(s) do
if s[i]='}' then w:=i;
if q<w then
a:=copy(s,q,w);
writeln(a);
end;
if a='' then writeln('komentov net');
end.

Спасибо!!! примерно понял как надо было правильно сделать. сейчас до делаю.... в массив)))
51 | Автор: Gernsback | 2012-03-13, 19:16   |  Репутация: [ + 0 ]
"Спасибо" принимается в виде повышения репутации ( Зелёный плюсик:) ). Обращайся ещё))

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
52 | Автор: Berestovskiy | 2012-03-13, 19:17   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
52 | Автор: Berestovskiy | 2012-03-13, 19:17   |  Репутация: [ + 211 ]
Нажал )))
з.ы.
не догоняю как сделать эту программу тогда что бы она обрабатывала массив из 20 строк ..
+ я заметил что в этом коде строки такого вида
текст{комментарий}текст
не считаются комментариями ..
53 | Автор: Gernsback | 2012-03-13, 19:48 | Изменено: Gernsback - Вт, 2012-03-13, 19:53   |  Репутация: [ + 0 ]
Вот тебе рабочий код:
var
a:array[1..20]of string;
i,j,p,w:integer;
s:string;
begin
for i:=1 to 20 do
readln(a[i]);
for i:=1 to 20 do begin
s:=a[i];
p:=pos('{',s);
if p=0 then writeln('net komentov') else
if pos('}',s)=0 then writeln('net komentov') else begin
for j:=1 to length(s) do
if s[j]='}' then w:=j;
if p>w then writeln('net komentov') else begin
delete(s,w+1,255);delete(s,1,p-1);end;
writeln(s);end;
end;
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
54 | Автор: Berestovskiy | 2012-03-14, 19:35 | Изменено: Berestovskiy - Ср, 2012-03-14, 19:35   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
54 | Автор: Berestovskiy | 2012-03-14, 19:35 | Изменено: Berestovskiy - Ср, 2012-03-14, 19:35   |  Репутация: [ + 211 ]
Помоги(( моя программа удаляет все начальные цифры из строк... всё работает... Осталось сделать так чтобы ЕСЛИ СТРОК НАЧИНАЮЩИХСЯ С ЦИФР НЕТ, ВЫВОДИТЬ СООБЩЕНИЕ ЧТО ИХ НЕТ. Это легко сделать но я не допру... можно или boolean переменную взять или просто переменную...но куда её вставить...
program pasha10;
var
a:array[1..20]of string[70];
s:string;
i:integer;
begin
writeln('ВВЕДИТЕ МАССИВ СТРОК ');
i:=1;
while (not EoF)and(i<20) do begin
readln (a[i]);
i:=i+1; end;
for i:=1 to 20 do begin
while (ord(a[i,1])>=48)and(ord(a[i,1])<=57) and (length(a[i])>0) do
delete(a[i],1,1);
end;
writeln('РЕЗУЛЬТАТ: ');
for i:=1 to 20 do if a[i]<>'' then
writeln(a[i]);
end.
55 | Автор: pashu83 | 2012-04-01, 20:09   |  Репутация: [ + 0 ]
зачем булеан?)
поставь перед циклом иф и все проблемы решены))
что-то типа:
иф первый символ - цифра зен ду цикл елс врайтлн ..))


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
56 | Автор: Berestovskiy | 2012-04-02, 00:41   |  Репутация: [ + 211 ]
спасибо, уже сделал с булеан...
57 | Автор: pashu83 | 2012-04-02, 08:43   |  Репутация: [ + 0 ]
Помогите плиз.
13. Начиная с центра обойти по спирали все элементы
матрицы размером 9x9 (распечатывая их в порядке обхода).
14.Дана матрица A из целых чисел размером MxN.
Переставить строки матрицы так, чтобы строки стали расположены
по убыванию в лексикографическом порядке.
58 | Автор: M@RECS | 2012-04-03, 05:32   |  Репутация: [ + 0 ]
1.
uses crt;
const n=9;
var a:array[1..n,1..n]of byte;
x,y,k,z:integer;
begin
clrscr;
for x:=1 to n do
begin
for y:=1 to n do
begin
a[x,y]:=n*(x-1)+y;
write(a[x,y]:4);
end;
writeln;
end;
writeln;
x:=5;y:=5;k:=0;{начнем от центра}
for z:=1 to n*n do
begin
write(a[x,y]:4);{выводим элемент}
case k mod 4 of
0:begin
dec(y);{вверх}
if (x-1)=y then inc(k);
end;
1:begin
inc(x);{вправо}
if(n-x+1)=y then inc(k);
end;
2:begin
inc(y);{вниз}
if(n-x)=(n-y) then inc (k);
end;
3:begin
dec(x);{влево}
if y=(n-x+1) then inc(k);
end;
end;
end;
readln
end.

2. Пример ввода-вывода


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
59 | Автор: Berestovskiy | 2012-04-03, 10:24 | Изменено: Berestovskiy - Вт, 2012-04-03, 10:25   |  Репутация: [ + 211 ]
Можете помочь решить 
На столе лежат n монеток. Некоторые из них лежат вверхрешкой, а некоторые – гербом. Определите минимальное число монеток, которые
нужно перевернуть, чтобы все монетки были повернуты вверх одной и той же
стороной.
 
Входные данные           
В первой строке входного файла INPUT.TXT записано
натуральное число N (1 <= N <= 100) – число монеток. В каждой из
последующих N строк содержится одно целое число – 1 если монетка лежит решкой
вверх и 0 если вверх гербом.
Выходные данные
60 | Автор: dfyzzibby | 2013-12-19, 17:10   |  Репутация: [ + 0 ]
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Поиск: