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

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

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

 
 Ответить  Открыть новую тему 
> задача про строки и файл с записями
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 9

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


Не могу с ними разобраться!!! sad.gif

Сообщение отредактировано: Zeon -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2





Группа: Пользователи
Сообщений: 9

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


1, Текст задан строкой, напечатать в алфавитном порядке все гласные буквы, которые входят в последнее слово.
и еще одна

2, В файле *.* содержатся записи, имеющие следующую структуру:
group :integer;
memo: string;
Запишите в бинарный файл все записи с полем memo, не содержащим цифры.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






1). Русская версия smile.gif
Код

Const
 Delimeters:Set Of Char = [' ',',',';','.','!','?'];
 Letters:Array[1..20] Of Char = ('А','Е','Ё','И','О','У','Ы','Э','Ю','Я','а','е','ё','и','о','у','ы','э','ю','я');
 s = 'Вот такой вот текст мы взяли для проверки';
Var
 i,j,k:Integer;
Begin
 i:=Length(s);
 While i>0 Do
   If s[i] In Delimiters Then
     Break
   Else
     Dec(i);
 For j:=1 To 10 Do
   For k:=i+1 To Length(s) Do
     If (s[k] = Letters[j]) Or (s[k] = Letters[j + 10]) Then
       Write(s[k]);
 WriteLn
End.

2). Кроссязычная версия smile.gif
Код

Var
 f1,f2:Text;
 Group:Integer;
 Memo:String;
 i:Integer;
 b:Boolean;
Begin
 Assign(f1,'In.txt');
 Reset(f1);
 Assign(f2,'Out.Txt');
 ReWrite(f2);
 While Not Eof(f1) Do
 Begin
   ReadLn(f1,Group);
   ReadLn(f2,Memo);
   b:=False;
   For i:=1 To Length(Memo) Do
     If Memo[i] In ['0'..'9'] Then
     Begin
       b:=True;
       Break
     End;
   If Not b Then
   Begin
     WriteLn(f2,Group);
     WriteLn(f2,Memo)
   End
 End;
 Close(f1);
 Close(f2)
End.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Смотрю...
*****

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

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


BlackShadow

А где же описание записей???

... = record .... end.

А то файл получается не с записями, а просто текстовый.
А выходной файл и вовсе не бинарный - насколько я понял он должен быть:

Код
f2 : File;


Сообщение отредактировано: APAL -


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






А какая разница???????????????????????????????????
Результа-то один и тот же...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Смотрю...
*****

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

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


Задачу, скорее всего, задал какой-то препод. И решение не соответствует условиям.


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Ну, доставучий какой...
Код

Type
 TData=Record
   Group:Integer;
   Memo:String[255]
 End;

Var
 f1:File Of TData;
 f2:File;
 d:TData;
 i:Integer;
 b:Boolean;

Begin
 Assign(f1,'In.In');
 Reset(f1);
 Assign(f2,'Out.Out');
 ReWrite(f2,1);
 While Not Eof(f1) Do
 Begin
   Read(f1,d);
   b:=False;
   For i:=1 To Length(d.Memo) Do
     If d.Memo[i] In ['0'..'9'] Then
     Begin
       b:=True;
       Break
     End;
   If Not b Then
     BlockWrite(f2,d,sizeOf(d)
 End;
 Close(f1);
 Close(f2)
End.


Вот только для дебага и демонстрации придётся входной файл создать:
Код

Type
 TData=Record
   Group:Integer;
   Memo:String[255]
 End;

Var
 f1:File Of TData;
 d:TData;
 i,n,k,j,l:Integer;

Begin
 Randomize;
 Assign(f1,'In.In');
 ReWrite(f1);
 n:=Random(100);
 For i:= 1 To n Do
 Begin
   d.Group:=Random(32767);
   d.Memo:='';
   k:=Random(256);
   For j:=1 To k Do
     d.Memo:=d.Memo+Char(Random(128-32)+32);
   Write(f1,d)
 End;
 Close(f1)
End.

Вот так, вроде...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8





Группа: Пользователи
Сообщений: 9

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


Спасибо всем за внимание ! smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Да, не на чем :p2: :P
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10





Группа: Пользователи
Сообщений: 9

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


Первая задачка че-т не пашет...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






Ну малёк обшыбсю:
Код

Const
Delimeters:Set Of Char = [' ',',',';','.','!','?'];
Letters:Array[1..20] Of Char = ('А','Е','Ё','И','О','У','Ы','Э','Ю','Я','а','е','ё','и','о','г','л','н','о','п');
s:String = 'Вок такой вот текст мы взяли для проверки';
Var
i,j,k:Integer;
Begin
i:=Length(s);
While i>0 Do
  If s[i] In Delimeters Then
    Break
  Else
    Dec(i);
For j:=1 To 10 Do
  For k:=i+1 To Length(s) Do
    If (s[k] = Letters[j]) Or (s[k] = Letters[j + 10]) Then
      Write(s[k]);
WriteLn
End.
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 29.03.2024 13:21
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name