Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2008, 14:58   #1
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость Поиск однофамильцев в программе

Ребята, вот задача:
Сводки об ученике состоят из его имени и фамилии и названия класса (году учебы и буквы), в котором он учится. Дан файл K, что содержит сводку об учениках школы.
а) Выяснить, имеются ли в школе однофамильцы.
=*=*=*=*=*=*=*=*
Я создал файл К, вписал любые сводки об 5 учениках
Мои предположения, что если есть однофамыльцы, вывести их на екран, если нет, написать строку типо "Однофамильци отсутствуют"
Вот мой код, который из файла К выводит на екран сводки, а как определить есть или не однофамильци помогите дописать!
Код:
program Project1;
{$APPTYPE CONSOLE}
uses
  SysUtils;

var
K:textfile;
st:string;
begin
assignfile (k, 'k.txt');
reset (k);
while not Eof(k) do
begin
readln (k,st);
writeln (st);
end;
readln;
close (k);
end.
Lemo вне форума Ответить с цитированием
Старый 10.11.2008, 18:35   #2
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость

Вот я написал через запись!
Вопросы:
1)Правильно я ли так сделал, потому что в условии сказано, что файл уже есть со сводками?!
2)Там, где вот такие символы \\\\\\ помогите дописать, что бы условие находило однофамильцев, если нет - то вывод строки-"Однофамильци отсутствуют"!
Код:
program Project1;
{$APPTYPE CONSOLE}
uses
  SysUtils;
 type
    LOL=record
       Im9:string[25];
       Famil:string[25];
       klas:string[10];
 end;
 mas=array [1..5] of LOL;
 var
 Ft: file of LOL;
 i : integer;
 B : LOL;

 const L :mas= (( im9:'Petro' ;  Famil:'Kosigin' ;   klas: '4-B'),
               (  im9:'Valentit' ; Famil: 'Urek';  klas: '5-D'),
               (  im9:'Maxim' ; Famil: 'Makish';  klas: '7-A'),
               (  im9:'Andriy' ; Famil: 'Kish';  klas: '9-G'),
               (  im9:'Svitlana' ; Famil: 'Oren';  klas: '11-V'));
begin
 assignFile(Ft,'LOL.txt');
 rewrite(Ft);
 For I:=1 to 5 do
    begin
      writeln('Im`9I=', L[i].im9 ,'  ',  'Frizvishe=', L[i].famil , '  ',  'kLaS=', L[i].klas);
      write(Ft,L[i]);
    end;
 closeFile(Ft);
 writeln;
 writeln;
 reset(Ft);
 writeln ('ENTER');
 readln;
  while not Eof(Ft) do
    begin
       read(Ft,B);
    \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
 closeFile(Ft);
 readln;
end.
Lemo вне форума Ответить с цитированием
Старый 11.11.2008, 01:17   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Вы молодец, что сами решаете.
Поэтому подскажу чуть-чуть..
решений вагон и маленькая тележка. Все они различны по скорости, эффективности и затратам памяти.
Так, навскидку, основные пути
1) если можно использовать компоненты Delphi
то через TStringList задача решается очень просто и эффективно. правда, я не уверен, что Вам допустимо использовать всё, что выходит за рамки Pascal

2) в лоб - все фамилии из файла читаем в массив
дальше - либо сортируем массив и сравниваем каждый элемент со следущих (если совпал - есть однофамильцы), либо в цикл берём каждый очередной элемент массива и сравниваем с оставшимися - совпал - выход из цикла - "Однофамильцы есть"...

p.s. я на вашем месте разделил программу на две части - одна создаёт файл данных, вторая - читает/анализирует.
Там и проще и нагляднее и логичнее... имхо...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Архивация в программе FaTaL Общие вопросы Delphi 13 04.03.2008 19:37
Бинарный поиск в 1мерном массиве, ошибка в программе из книги ILDAR@GIZmo Помощь студентам 4 02.12.2007 22:22
Ошибка в программе RoadTrain Общие вопросы Delphi 5 24.10.2007 22:16
Звук в программе - воспроизведение wma и ogg LeoN Мультимедиа в Delphi 4 14.06.2007 17:48