Помощь - Поиск - Пользователи - Календарь
Полная версия: Поиск
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
CherkaS
 ! 
Пользуйся тегами !
klem4


написал поиск по сумме товара а она не работает вернее работает ели ввести 1 но если вводить все кроме 1 то там все зацикливается и все кароче так не должно быть
вот код программы!!!
посмотрите пожалуйста и скажите что у меня не правильно почему программа не работает!!

 program search;
uses
crt;
var
res:text;
x,v,k,s,s1,s2:string;
n:boolean;
m,l,i,b,p:integer;
z:longint;
c:char;


BEGIN
assign(res,'BD.che');
write ('[vvedite CTOUMOCTb iskomogo produkta] ');
readln(x);
z:=length(x);
reset(res);
while not EOF(res) do
begin
readln(res,k);
p:=pos('_',k);
s1:=k;
s2:=k;
delete(s1,1,p);
delete(s2,p,length(k));
l:=length(s1);
for i:=1 to l do begin
for m:=1 to z do
if s1[i]=x[m] then begin;
n:=true;
inc(i);
end else begin
n:=false;
break;
end;
if n=true then
begin
writeln(s2+' '+s1+'pyb.');
end; end;
end;
close(res);
readln;
end.


файлы в базе выглядят следующем виде:
помидори_12
памела_65
огурцы_9

(название продукта)_(цена продукта)
volvo
Так не проще?

program search;
uses
crt;
var
res:text;

x, price: integer;
s: string;
code, pp: integer;


BEGIN
assign(res,'BD.che');
write ('[vvedite CTOUMOCTb iskomogo produkta] ');
readln(x);

reset(res);
while not EOF(res) do begin

readln(res, s);
pp := pos('_', s);
val(copy(s, pp + 1, 255), price, code);
if (code = 0) and (price = x) then
writeln(copy(s, 1, pp - 1) + ' ', x, ' pyb.');

end;
close(res);
readln;
end.

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.