Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Турбо Паскаль. Программирование на Pascal
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]
Модераторы: paradise, KMA
  

nik007


Удален

Привет! Ёще раз огромное спасибо!!!

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 18 нояб. 2006 17:38 | IP
miss_graffiti


Долгожитель

flower, ищи по теме - решалось подобное неоднократно.

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 18 нояб. 2006 18:45 | IP
flower


Новичок

Ну помогите пожалуйста!Я тут пыталась решать,но не получается.program pr1;
var
f1:file of string;
i:integer;
a,surname,name,phone,search:string;
begin
assign(f1,'rabot.dat');
rewrite(f1);
for i:=1 to 4 do
begin
writeln('familia');
readln(surname);
writeln('imia');
readln(name);
writeln('nomer');
readln(phone);
write(f1,surname,name,phone);
end;
close(f1);
assign(f1,'rabot.dat');
reset(f1);
writeln('vvedite poisk polya');
readln(search);
while not eof(f1) do
begin
if surname=search then
begin
writeln('naideno :');
writeln(surname,' ',phone);
end;
end;
close(f1);
assign(f1,'rabot.dat');
reset(f1);
while not eof(f1) do
begin
a:=copy(phone,1,2);
if a='41' then
writeln(surname);
end;
readln;
end.

Всего сообщений: 1 | Присоединился: декабрь 2013 | Отправлено: 18 нояб. 2006 20:42 | IP
KMA



Долгожитель

$#@$@$%^*@(# flowet ты предыдущую задачу посмотреть не можешь? Вот честное слово, то же самое...
Создай запись
Type
human=record
 family: string [20];
 name: string [10];
 phone: longInt
end;

Далее, один файл, нетекстовый, в который будешь записывать сотрудников объявляется так:
Var
fDataHuman: file of human;
fTextHuman: text;
buf: human;


Ну вот, перепишешь так:
...
reSet (fDataHuman);
reWrite (fTextHuman);
while not eof (fDataHuman) do
 begin
    read (fDataHuman, buf);
    with buf do
      begin
        write (fTextHuman, concat (family, ' ', name, ' '));
        writeLn (fTextHuman, phone)
      end;
 end;
...


Так, надеюсь это понятно.

Поиск по фамилии осуществляется следующем образом:

seek (fDataHuman, 0);
while not eof(fDataHuman) do
begin
   read (fDataHuman, buf);
   if buf.family=searchFamily
      then writeLn (buf.family+' ', buf.phone)
end;


Чтобы остортировать по фамилии достаточно сравнить поля Family двух записей файла. Очень похоже на сортировку массива, только для доступа к какому либо элементу с индексом i нужно использовать seek (f, i), где f -- файловая переменная, а i индекс элемента. Нужно помнить, что индексация начинается с нуля. Для определения размера файла используй FileSize (f).

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 18 нояб. 2006 23:27 | IP
mittal


Удален

Помогите решить задачу, сил просто уже не осталось на инфу((( ...  "Сведения об автомобиле состоят из фамилии и инициалов владельца (на русском языке), марки автомобиля, номерного знака и года выпуска автомобиля. Даны два файла, содержащие сведения об автомобилях (возможны пересечения). Выделить автомобили, номерной знак которых содержит заданную последовательность символов. Сгруппировать найденные автомобили в алфавитном порядке."

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 20 нояб. 2006 18:25 | IP
RamoN


Удален

Пацаны помогите пожалуста с алгоритмом в Паскале. Я начинающий сам не сделаю.

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 20 нояб. 2006 18:28 | IP
RamoN


Удален

Вычислить число сочетаний С по формуле:  
С=n!/m!(n-m)! Помогите ПЛИЗ!!!

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 20 нояб. 2006 18:35 | IP
KMA



Долгожитель

Ramon, оно встречалось на форуме (во всяком случае похожее).
Суть такова. Задаешь процедуру расчета факториала, а далее пишешь:

C:=fact (n)/fact (m)*fact (n-m);
где fact (x)
function fact (x:byte):longInt;
Begin
    if x>1
        then fact:=fact (x-1)*x
        else fact:=1
End;

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 20 нояб. 2006 23:58 | IP
KMA



Долгожитель

mittal, а ты на страничку 49 загляни там примерно то же самое написано )

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 21 нояб. 2006 0:00 | IP
mittal


Удален

КМА, объясни плиз что это "buf=car;" (стр. 49) и как оно работает?

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 21 нояб. 2006 8:37 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]

Форум работает на скрипте © Ikonboard.com