IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Массивы, Не получается
Abror
сообщение 18.04.2006 13:55
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Аброр

Репутация: -  0  +


Здрасте не поможете написать прогу?
Есть офис сотрудников указаны фамилию,имя,стаж, номер телефона и зароботная платаю
А) Вывести список сотрудников чей стаж не менее 20 лет работы
В) Вывести список сотрудников две первые цифры номера которых одинаковы

Часть А я сделал.
Часть В надо сделать с массивами и процедурой
Заранее огромное спасибо! Если можно мне на адрес <...> Нельзя! Соизволь прочитать правила и воспользоваться поиском наконец! Ты думаешь, ДО ТЕБЯ никто такого типа вопросов не задавал? Ошибаешься.

program Kursovaya; 
type group=record                                                            
surname:string[10];                                                           
name:string[10];                                                              
year:integer;                                                                 
money:integer;                                                                
number:string[7];                                                             
end;                                                                          
var F:file of group;                                                          
G:group; i,n:integer; s:string;                                               
begin                                                                         
    Assign(F,'C:\TP7\kursovaya.pas');                                         
write('Vvedite chislo sotrudnikov');  readln(n); rewrite(F);                   
  For i:=1 to n do begin with G do                                            
begin                                                                         
      readln(surname);                                                       
      readln(name);                                                          
       readln(year);                                                          
      readln(money);                                                         
      readln(number);                                                        
       end;                                                                   
write(F,G); 
   end;                                                                          
reset(F);                                                                     
WHILE NOT EOF (F) do begin                                                     
read (F,G);                                                                   
IF(G.year>=20) then begin                                                     
writeln('Staj raboti ne menee 20 let');                                        
writeln(G.surname);                         writeln(G.name); 
end.

Это первая часть проги которую я смог сделать

Да и теги тоже не просто так существуют. Ими пользоваться нужно.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 18.04.2006 14:10
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


...
type 
  mass = array [1..100] of group;
var
  myMass: mass;

{ Считывание файла в массив }
i:=1;
WHILE NOT EOF (F) do 
  begin 
    read (F,myMass[i]); 
    i:=i+1;
  end;
...


Вытащить 1-е два символа из строки - ф-ция copy или
tempS:=MyMass[i].Nomer[1]+MyMass[i].Nomer[2];


Поиск совпадающих номеров:
В цикле
Берешь 1-й номер и в цикле сравниваешь с остальными,
далее со 2-го и т.д.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 27.07.2025 10:51
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"