2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 1 задача - Работа с числовыми файлами.2 задача - Работа с ф
Сообщение04.03.2009, 18:19 
1 задача - Работа с числовыми файлами
Создать файл данных соответствующих условию. решить задачу с использыванием данных создание файла.предусмотреть процедуру просмотр на экране дисплея.
УСЛОВИЕ:
Дан файл f, компоненты которого являются целыми числами. Получить в файле g все нечетные числа, входящие в файл f. Числа в файле g должны следовать в порядке не возростания!

2 задача - Работа с файлом записи
При решении задачи использывать тип данных запись.Написать программу создания файла данных соответствующих условию задачи. Решить задачу с использыванием данных создание файла.
УСЛОВИЕ:
Сведения о студенте состоят из его имени,фамилии и шрифта группы.Выяснить имеються ли однофамильцы в какой-нибудь одной группе.Отпечатать шифр этой группы,фамилии и имена однофамильцев.

 
 
 
 
Сообщение04.03.2009, 19:13 
Аватара пользователя
sv2311, Ваши задачи не представляют никакой проблемы алгоритмически, и, скорее всего, имеют целью научить Вас программированию.

А мы программировать уже умеем 8-)

 
 
 
 
Сообщение04.03.2009, 19:41 
Молодец!если впадло,то зачем біло передруждатся и писать такое длиное сообщение.....

 
 
 
 
Сообщение04.03.2009, 19:44 
Аватара пользователя
А затем, чтобы напомнить правила - здесь не принято давать готовых решений, но если у Вас возникнут какие-то конкретные затруднения, мы с удовольствием Вам поможем - по мере сил.

 
 
 
 
Сообщение04.03.2009, 19:47 
предложите свои версии, и если вдруг что не так -- их добросовестно раскритикуют.

А обучать тут навыкам программирования -- так тут не учебник.

 
 
 
 1 прога - ответ. если интересно
Сообщение09.03.2009, 23:48 
program sdfsa;
uses crt;
type nfile=file of integer;
s=string;
vector=array[1..100] of integer;
var f,g:nfile;
i,n:byte;
fin,gin:integer;
a:vector;

Procedure Sort(m:integer;var x:vector);
var flag: boolean;
i:integer;
p:integer;
begin
repeat
flag:=false;
for i:= 1 to m-1 do
begin
if x[i]<x[i+1] then
begin
p:=x[i];
x[i]:=x[i+1];
x[i+1]:=p;
flag:=true;
end;
end;
until not flag;
end;

Procedure readfile(pin:integer;url:s;k:integer;nin:byte;var filein:nfile);
begin
randomize;
assign(filein,url);rewrite(filein);
for i:=1 to nin do begin pin:=random(k);write(filein,pin);end;
reset(filein);
for i:=1 to filesize(filein) do begin read(filein,pin);write('':1,pin,'':1);end;
close(filein);
end;

begin
clrscr;
randomize;
readln(n);
writeln('f');
readfile(fin,'ffile.dat',785,n,f);
gotoxy(2,wherey+1);


assign(g,'gfile.dat');rewrite(g);
reset(f);
for i:=1 to filesize(f) do
begin
read(f,fin);if odd(fin)=true then begin write(g,fin);a[i]:=fin;end;
end;
close(f);
sort(n,a);
gotoxy(2,wherey+1);
writeln('g');
reset(g);
for i:=1 to filesize(g) do begin write(g,a[i]);write('':1,a[i],'':1);end;
readln;


end.

 
 
 
 2 задача - ответ
Сообщение10.03.2009, 14:19 
program sdfsa;
uses crt;
type str=string;
student=record
Fam:string[25];
Name:string[25];
Shifr:string[25];
end;
newfile=file of student;
var a,size,i,j:byte;
st:student;
f1:newfile;
fam:str;


Procedure my_vin(x1,y1,x2,y2:integer);
begin
window(1,1,80,25);
textbackground(white);
clrscr;
window(x1-2,y1-1,x2+2,y2+1);
textbackground(red);clrscr;
window(x1,y1,x2,y2);
textbackground(black);clrscr;
textcolor(15);
end;
Procedure stud(name:str; var f:newfile);
begin
my_vin(15,5,65,21);
gotoxy(8,3); write('Введите данные про нового студента');
gotoxy(11,4); write('Фамилия ');readln(st.fam);
gotoxy(13,6); write('Имя ');readln(st.name);
gotoxy(13,7); write('Шифр группы ');readln(st.shifr);
assign(f,name);
reset(f);
size:=filesize(f);
seek(f,size);
write(f,st);
gotoxy(16,17); write('Данные сохранены');
close(f);
readln;
end;
Procedure vivod(name:str;var f:newfile);
begin
my_vin(15,5,7,14);
gotoxy(2,4); write('Фамилия');
gotoxy(12,4); write('Имя ');
gotoxy(22,4); write('Шифр группы ');
assign(f,name);
reset(f);
size:=filesize(f);
writeln;
j:=5;
for i:=1 to size do
begin
j:=j+1;
seek(f,i-1); read(f,st);
gotoxy(2,j); write(st.fam);
gotoxy(12,j); write(st.name);
gotoxy(22,j); write(st.shifr);

writeln;
end;
readln;end;


Procedure poisk(name:str; var f: newfile);
begin
my_vin(15,5,7,14);
readln(fam);
clrscr;
gotoxy(2,4); write('Фамилия');
gotoxy(12,4); write('Имя ');
gotoxy(22,4); write('Шифр группы ');
assign(f,name);
reset(f);
size:=filesize(f1);
writeln;
j:=5;
for i:=1 to size do begin
seek(f,i-1); read(f,st);
if fam=st.fam then begin
j:=j+1;
gotoxy(2,j); write(st.fam);
gotoxy(12,j); write(st.name);
gotoxy(22,j); write(st.shifr);
end;
writeln;
end;
readln;
end;
Procedure menu;
Begin
my_vin(17,7,63,20);
gotoxy(7,2);write(' Выберите пункт меню');
gotoxy(7,4);write('1.Добавить новые данные');
gotoxy(7,6);write('2.Просмотр всех данных');
gotoxy(7,8); write('3.Поиск данных');
gotoxy(7,10); write('4.Удалить все данные');
gotoxy(7,12); write('5.Выход');
gotoxy(22,13);
end;

Procedure delete(name:str; var f:newfile);
begin
assign(f,name);
rewrite(f);
close(f);
end;

begin
clrscr;
repeat
Menu;
readln(a);
Case a of
1:stud('f:\f2.man',f1);
2:vivod('f:\f2.man',f1);
3:poisk('f:\f2.man',f1);
4:begin
delete('F:\f2.man',f1);
gotoxy(17,13);
write('Данные удалены');
readkey;
end;
end;
until a=5;
end.

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group