type mas=array [1..100] of integer; Vektor=object logF: text; myMas: mas; i:Integer; procedure init(fileName: string); procedure Vuvod; procedure Vvod; end;
procedure Vektor.init(fileName: string); //var i: integer; begin i:=0; assign(logF,fileName); reset(logF); // while do // begin repeat i:=i+1; read(logF,myMas);
until eof(logF); // end; //Close(logF);
end;
procedure Vektor.Vuvod; var n:Integer; begin init('1.txt'); Write('Ishodnuj Vektor: '); for n:=1 to i do begin write(myMas[n], ' '); end; Writeln; end;
procedure Vektor.Vvod; var newA:string; begin Read(newA); {здесь проблема, программа проходит эту строку без возможности ввода, просто проходит} Rewrite(logF); Writeln(logF,newA); Close(logF);
end;
var myVektor: Vektor;
procedure showMenu; var key: byte; begin writeln('1. Vuvod'); writeln('2. Vvod'); writeln('3. Vuhod'); read(key); case key of 1: begin myVektor.Vuvod; showMenu; end;
2: begin myVektor.Vvod; showMenu; end;
3: begin //writeln('zakrutie --',#62,' Enter'); //writeln('Net? --',#62,' 1'); // read(key); // if key=1 then showMenu; end; end; end;
Begin Writeln('Zadacha 2.2.8. Programma Object-Vektor:'); myVektor.init('1.txt'); showMenu; //Readln;readln; End.
Дополнен 11 лет назад
причём, если вместо Read(newA); написать Readln(newA); Readln(newA); то второй ридлн программа воспринимает нормально,... в чём причина, ума не приложу
{$APPTYPE CONSOLE}
uses
SysUtils;
type
mas=array [1..100] of integer;
Vektor=object
logF: text;
myMas: mas;
i:Integer;
procedure init(fileName: string);
procedure Vuvod;
procedure Vvod;
end;
procedure Vektor.init(fileName: string);
//var i: integer;
begin i:=0;
assign(logF,fileName);
reset(logF);
// while do
// begin
repeat
i:=i+1;
read(logF,myMas);
until eof(logF);
// end;
//Close(logF);
end;
procedure Vektor.Vuvod;
var n:Integer;
begin
init('1.txt');
Write('Ishodnuj Vektor: ');
for n:=1 to i do
begin
write(myMas[n], ' ');
end;
Writeln;
end;
procedure Vektor.Vvod;
var newA:string;
begin
Read(newA); {здесь проблема, программа проходит эту строку без возможности ввода, просто проходит}
Rewrite(logF);
Writeln(logF,newA);
Close(logF);
end;
var myVektor: Vektor;
procedure showMenu;
var key: byte;
begin
writeln('1. Vuvod');
writeln('2. Vvod');
writeln('3. Vuhod');
read(key);
case key of
1: begin
myVektor.Vuvod;
showMenu;
end;
2: begin
myVektor.Vvod;
showMenu;
end;
3: begin
//writeln('zakrutie --',#62,' Enter');
//writeln('Net? --',#62,' 1');
// read(key);
// if key=1 then showMenu;
end;
end;
end;
Begin
Writeln('Zadacha 2.2.8. Programma Object-Vektor:');
myVektor.init('1.txt');
showMenu;
//Readln;readln;
End.