Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Братья программисты СРОЧНО нужна помощь по паскалю, помогите пожалуйста написать пару прог 
:(
    Опции темы
disa
Дата 30.5.2004, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.5.2004

Репутация: нет
Всего: нет



sad.gif Люди послезавтра у меня экзамен надо допустится написав 100 программ на паскале я НЕ УСПЕВАЮ написал 62 пожалуйста напишите хотя бы пару прог по этим заданиям они легкие и короткие plizzz!!!!

13 дан текстовый файл f Получить все его строки , содержащие менее 15 символов

7 Дан текстовый файл F Исключить пробелы стоящие в концах его строк

9 Дан файл f, компоненты которого являются целыми числами Получить в файле g все компоненты фыйла f: а) являются чётными б) делятся на 3 в) являются точными квадратами.

2)Дан текстовый файл f. получить все его строки содержащие более 30 символовю

PM MAIL   Вверх
Pakshin A. S.
Дата 30.5.2004, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Код

var
f:text;
s:string;
begin
Assing(f, '...');
reset(f);
while not Eof(f) do
 begin
  readln(f, s);
  if Length(s) < 15
    then
     writeln(s);
 end;
Close(f);
end.

Добавлено @ 19:09
Код

var
f, g:text;
s:Stirng;
begin
Assign(f, '...');
Assign(g, '...');
reset(f);
rewrite(g);
while not Eof(f) do
  begin
   readln(f, s);
   while s[1] = ' ' do
    Delete(s, 1,1);
   while s[Lengt(s)] = ' ' do
    Delete(s, Length(s), 1);
   writeln(g, s);
  end;
rewrite(f);
reset(g);
while not Eof(g) do
  begin
   readln(g, s);
   writeln(f, s);
  end;
Close(f);
Close(g);
end.

Добавлено @ 19:10
Цитата

2)Дан текстовый файл f. получить все его строки содержащие более 30 символовю

Замени в первом решении < 15 на > 30
Добавлено @ 19:11
Sorry, №9 лень писать... smile.gif
PM   Вверх
SlaUr
Дата 31.5.2004, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 408
Регистрация: 18.9.2003

Репутация: 3
Всего: 5



Цитата
9 Дан файл f, компоненты которого являются целыми числами Получить в файле g все компоненты фыйла f: а) являются чётными б) делятся на 3 в) являются точными квадратами


Код

var f1,f2:Text;i1,i2:integer;St1:string;



Function div2(i:integer):boolean;{Определение четности}
var r1:real;
begin
r1:=i;
r1:=r1/2;
if r1=Round(r1) then div2:=True else div2:=False;
end;

Function div3(i:integer):boolean;{Определение деления на 3}
var r1:real;
begin
r1:=i;
r1:=r1/3;
if r1=Round(r1) then div3:=True else div3:=False;
end;

Function kvadrat(i:integer):boolean;{Точные квадраты}
begin
kvadrat:=False;{не помню вообще что такое точные квадраты - пишите этот код сами}
end;

begin
Assign (F1,'my1.txt');Assign (F2,'my2.txt');
{$I-}Reset(F1){$I+}; if IOResult<>0 then Halt;
{$I-}Rewrite(F2){$I+};if IOResult<>0 then begin Close(F1); Halt;end;
While not Eof(F1) do
begin
  ReadLn(F1,St1);val(st1,i1,i2);
  if div2 (i1) then WriteLn(F2,St1) else
     if div3 (i1) then WriteLn(F2,St1) else
       if kvadrat (i1) then WriteLn(F2,St1);

end;
{$I-}Close(F1){$I+}; if IOResult<>0 then;
{$I-}Close(F2){$I+}; if IOResult<>0 then;
end;



Это сообщение отредактировал(а) SlaUr - 2.6.2004, 09:58
PM MAIL   Вверх
disa
Дата 1.6.2004, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.5.2004

Репутация: нет
Всего: нет



biggrin.gif огромное спасибо тем кто мне помог в беде очень благодарен если когда-нибудь нужна будет помощ помогу чем смогу . огромное спасибо!!!
PM MAIL   Вверх
disa
Дата 1.6.2004, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.5.2004

Репутация: нет
Всего: нет



inlove.gif Еще раз благодарен за помощь осталось только две програмки, которые у меня не получаются никак не могу понять. как сделать исключение повторного вхождения числа
15) Дан файл f, компоненты которого являются целыми числами. Получить файл g, образованный из файла f исключением повторных вхождений одного и того же числа

14) Дан текстовый файл f . Записать в перевернутом виде строки файла f в файл g. Порядок строк в файле g должен быть обратным по отношению к порядку строк исходного файла.

не получается поменять порядок , как вообще аписать эту прогу
PM MAIL   Вверх
Pakshin A. S.
Дата 2.6.2004, 08:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



15) Теория: все первые вхождения числа записывай в список:
если числа нет в списке, то заносим его туда
иначе не будем писать его во второй файл

Если списки не знаем: большой массив biggrin.gif
14) Используй нетипизированный файл:


Код

for i:=FileSize(f) downto 1 do
 begin
  Seek(f, i);
  read(f, c, 1, r);
  write(g, c, 1, r);
 end;

Может к вечеру напишу полный код...
PM   Вверх
Pakshin A. S.
Дата 2.6.2004, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



С поправкой №14:
Код

var
f,g:file;
c:string[1];
r:integer;
i:integer;
begin
Assign(f, 'D:\df.txt');
Assign(g, 'D:\td.txt');
reset(f, 1);
rewrite(g, 1);
for i:=FileSize(f)-1 downto 0 do
 begin
  Seek(f, i);
  Blockread(f, c, 1, r);
  Blockwrite(g, c, 1, r);
 end;
Close(f);
Close(g);
end.

Вроде работает... biggrin.gif
PM   Вверх
Pakshin A. S.
Дата 2.6.2004, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



А вот и обещенная попытка:
Код

type
TRecInt = ^TRecIntA
TRecIntA = record
 Item: integer;
 Next: TRecInt;
end;

var
RecInt, HRecInt:TRecInt;

function IsInRec(const Item:integer):boolen;
begin
IsInRec:=false;
RecInt:=HRecInt;
Pred:=RecInt;
while (RecInt <> nil) and not IsInRec do
 if RecInt.^Item = Item
  then
   IsIsRec:=true;
  else
   RecInt:=RecInt^.Next;
end;

procedure AddToRec(const Item:integer);
begin
New(RecItem);
RecItem^.Item:=Item;
RecItem^.Next:=HRecItem;
HRecItem:=RecItem;
end;

procedure DelFromRec(const Item:integer);
var
b:boolean;
begin
RecInt:=HRecInt;
b:=false;
while (RecInt <> nil) and not b do
 begin
  b:=RecItem^.Item = Item;
  if b
   then
    RecItem:=RecItem^.Next^.Next;
 end;
if not b
 then
  HRecInt:=HRecInt^.Next;
end;

var
f,g:text;
i:integer;

begin
Assign(f, 'C:\SomeFileA.txt');
reset(f);
Assign(g, 'C:\SomeFileB.txt');
rewrite(g);
while not Eof(f) do
 begin
  read(f, i); // Вроде так можно делать...
  if IsInRec(i);
   then
    DelFromRec(i)
   else
    begin
     write(g, str(i) + ' ');
     AddToRec(i);
    end;
 end;
Close(f);
Close(g);
end.


PM   Вверх
disa
Дата 4.6.2004, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.5.2004

Репутация: нет
Всего: нет



withstupid.gif Всем спасибо очень благодарен я допустлся до экзамена у меня не получилось 9 программ, но мне разрешили их преределать это были самые сложные проги и у меня там были ошибк они не работали не знаю как их переделать если кто знает как их написать напишите пожалуйста вот несколько из них:

13) Опишите , используя структуру данных запись , вступительных экзаменов. Абитуриенты сдавали три экзамена для поступления необходимо набрать 12 баллов . Определить списки абитуриентов , зачисленных в институт , количество несдавших экзамены. списки абитуриентов сдавших все на 5


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

*никак не могу заставить прогу читать именно первые три цифры*

6)опишите используя структуру данных запись записную книжку, составить прогу выдающую список друзей , кому в этом году исполняется 25 лет. (фамилия и инициалы год рождения дата рождения месяц рождения)

*не получается составить поиск по 25 и заставить её считать года*


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

*аналогично*

11) Описать используя структуру данных запись , таблицу соревнований (название команды, количество набраных очков).Выбрать команду занявшую первое место . Упорядочить список команд , в зависимости от занятого места.

*какие-то проблемы с упорядочинием*

PM MAIL   Вверх
Pakshin A. S.
Дата 5.6.2004, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Забавно biggrin.gif biggrin.gif biggrin.gif
Если не к спеху, то вечером, часов в 7 по Московскомй времени, сделаю... Здесь задачки очень простые, просто тебе немного с теорией посидеть надо было и немного терпения. smile.gif
PM   Вверх
Pakshin A. S.
  Дата 5.6.2004, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



1)
Код

(***)
var
s:string[3];
First3:integer;
ErrorC:integer;
(***)
begin
s:=Copy(YourRecord.PhoneNumber, 1, 3);
val(s, First3, ErrorC);
(***)
end.

6)
Код

(***)
function GetLastYear(Day, Month:integer):integer;
begin
GetLastYear:=0;
if Month < YourRecord.BirthMonth
 then
  GetLastYear:=1
 else
  if Day < YourRecord.BirthDay
   then
    GetLastYear:=1;
end;

(***)
Years:=Year - YourRecord.BirthYear + GetLastYear(Day, Month);
(***)

5)
Код

function InMay(Month:integer {Month:string}):boolean;
const
MayM: string = 'май';
begin
InMay:=Month = 5 {Month = MayM);
end;

11)
Проведи аналогию с массивами. На худой конец заведи массив с очень большим колличеством элементов. smile.gif

13) (Чудный номер)
Сложить баллы пробовал?!
Если сумма больше -> inc(Поступившие)
Иначе -> inc(Не_поступившие)
Если сумма равна 15 -> inc(Гении)



P. S. Ну просто детские задачи!!! smile.gif

Это сообщение отредактировал(а) Pakshin A. S. - 5.6.2004, 17:17
PM   Вверх
Rave
Дата 5.6.2004, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 5.6.2004

Репутация: нет
Всего: нет



Модератор: Удалено как флейм

Это сообщение отредактировал(а) Pegas - 5.6.2004, 21:42
PM MAIL   Вверх
Medved
Дата 5.6.2004, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 14
Всего: 154



М
 
2Rave Убедительная просьба не нарушать правила форума!



--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.