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

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

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

 
 Ответить  Открыть новую тему 
> наличие буквы из файла в множестве
Alucard
сообщение 13.05.2009 21:59
Сообщение #1


Новичок
*

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

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


Дан файл из латинских букв, описать процедуру print(A), печатающую в алфавитном порядке все элементы множества А (SET OF 'a'..'z')

сижу пол-сонный, нифига не соображаю уже. КОд вроде начал. Помогите советом или строчкой, проснусь доделывать буду

На данный момент не знаю как заставить проверять фаил в алфавитном порядке

Код
program laba11;
uses    crt;
const   filename='c:\text.txt';
var     a:set of char;
        i,n:integer;
        poz:byte;
        f:text;
        temp,ln:string[80];

begin
     clrscr;
     a:=['a'..'z'];
     assign(f,filename);
     while not eof do
       begin
         append(f);
         for i:=1 to length(ln) do readln(f,ln);
         if  ln[i] in a then
           begin
             poz:=pos(ln[i],ln);

     writeln;
     readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 14.05.2009 6:44
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Alucard @ 13.05.2009 22:59) *
описать процедуру print(A), печатающую в алфавитном порядке все элементы множества А (SET OF 'a'..'z')
Примерно так:
for c:='a' to 'z' do if c in A then Write©;



--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 14.05.2009 8:01
Сообщение #3


Гуру
*****

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

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


{ Дан файл из латинских букв }
{ qwertyuiopasdfghjklzxcvbnm }

program laba11;
uses crt;
const
filename='text.txt';
type
mnozh = set of char;
var
a : mnozh;
q : char;
f : file of char; {Дан файл из латинских букв}
Procedure Print (b: mnozh);
var
c : char;
begin
for c:='a' to 'z' do
if c in b then
Write©;
end;

begin
clrscr;
a:=[];
assign(f,filename);
ReSet(f);
while not eof(f) do
begin
read(f,q);
{сюда можно вставить проверку на вхождение во множество (защиту от дурака)}
include(a,q);
end;
print(a);
readln;
Close(f);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Alucard
сообщение 17.05.2009 18:57
Сообщение #4


Новичок
*

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

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


Lapp, Ozzя
Спасибо). Не ожидал чесно весь код увидеть
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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