Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Типизированные фалы... Очень нужно! (https://forum.antichat.xyz/showthread.php?t=97957)

Сёмка 25.12.2008 23:17

Типизированные фалы... Очень нужно!
 
Ребят полная ж*па, заболел и пропустил лекции по файлам в Паскале, учебника нет, в инете сплошная фигня, а работы надо завтра сдать, я конечно разберусь с ними, но вот до завтра сдать ни как не с могу (они ещё просят, что бы все проги делал через модуль и менюшку)... Я же знаю, что вам это расплюнуть, помогите пожалуйся:

-------------------------------------------------------------------------------------

1. Даны два файла с целыми числами, нужно во втором файле найти такой элемент, который будет по значению своему ближе всех остальных к минимальному элементу первого файла.

-------------------------------------------------------------------------------------

2. Разработать программу для обработки данных типизированного файла. Обработка данных должна включать процедуры:
• для вывода шапки таблицы;
• для вывода данных одной записи;
• для создания файла;
• для дополнения файла новыми записями;
• для записи данных в файл;
• для чтения данных файла;
• для модификации ряда записей;
• для одного из видов поиска записей файла с выводом найденных записей или сообщения о неуспешном поиске:
• по одному поисковому признаку;
• по любому сочетанию заданных поисковых признаков;
• удаления записей из типизированного файла заданным методом.

Магазин “Мебель”. Номенклатура товаров: наименование изделия, дата изготовления, цена продажи, завод-изготовитель, цвет, название материала из которого изготовлено изделие.

--------------------------------------------------------------------------------------

3.В каждом варианте задания исходным является файл с текстом, состоящим из нескольких предложений. Слова предложений разделяются пробелами и знаками препинания; предложения – точкой или знаками ? и !. Тексты исходных данных формируются самостоятельно. Они должны позволить оценить работоспособность программы.
По каждому варианту задания надо:
1) посимвольно ввести и вывести исходные данные;
2) выполнить над текстом заданный вариант обработки и вывести сформированные результаты в рабочий тестовый файл;
3) вывести данные из рабочего текстового файла и вывести их в файл-протокол тестирования.

Выделить из исходного текста части текста в круглых скобках вместе со скобками; вложенных скобок нет. Определить количество таких частей текста и в каждом из них количество русских букв, латинских букв и цифр.

---------------------------------------------------------------------------------------

4.В каждом варианте задания исходным является файл с элементами матрицы. Необходимо считать исходные данные, вывести их на экран для просмотра и выполнить обработку. Результат обработки вывести на экран и в файл.

Вычислить сумму элементов массива Х(N), удовлетворяющих условию Xi>M, где М=махX-minX.

---------------------------------------------------------------------------------------

5.Дан файл f, содержащий сведения о кубиках, размер каждого кубика (длина ребра в см.), его цвет (красный, жёлтый, зелёный или синий) и материал(деревянный, металический, картонный). Найти колличество деревянный кубиков с ребром 3см. и колличество металических с ребром больше 5см.

---------------------------------------------------------------------------------------

Вот такие вот дела, жестокие люди у нас! P.S. Всю ночь буду у компа(буду делать практические по записям), если кому не сложно напишите проги, буду очень благодарен.

(крайний срок сдачи во вторник)

t04 28.12.2008 03:22

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

De-visible 28.12.2008 14:03

много букаф....

diehard 29.12.2008 11:33

ТС ты забыл самое главное - денег то сколько платишь?

Sinay 30.12.2008 00:39

капиталистический мир,слишком много хочешь,за бесплатно...
тоже влом писать(

Сёмка 02.01.2009 04:24

Цитата:

я бы написал, но мне реально влом. сомневаюсь что найдкться энтузиасты которые будут тратить время для написания твоей работы. Ты лучше сам напиши а тут тебе помогут, исправят или подскажут что к чему.
Знаешь, наверно это сложнее чем я думал...
Цитата:

много букаф....
Да ты остроумный )))
Цитата:

ТС ты забыл самое главное - денег то сколько платишь?
Мужик, ты наверно очень талантливый программист и очень умный. Вот только не сходится, ты торчишь на форуме, значит не "талант". Ты не умный, так как даже до тебя наверно дошло, что я не олигарх, и точно не буду платить за проги. Ты просто хотел показать себя остроумным (не обольщайся, если ты хотел реально с меня срубить денег, в этом случае ты реально глупый), но знаешь, так как остроумием ты не блещешь, уж лучше учись и закончи МГУ, ну или МАИ.
Цитата:

капиталистический мир,слишком много хочешь,за бесплатно...
тоже влом писать(
Капиталистический мир!? Парень, да ты мозг!
Я согласен, что нельзя так, но тогда я был в затруднительном положении (выкинуть могли), сейчас у меня впереди каникулы, и надеюсь, справлюсь, если не получиться, надеюсь вы поможете найти мне ошибку.
Я спать... Спасибо за то, что отписались!

Sinay 02.01.2009 11:21

жди,тебе тут помогут
я удивлен,что тему еще не снесли

Romantic1989 02.01.2009 12:56

Вот тебе пример:
задание:
Дана информация по работниках бригады. Фамилия, год рождения, стать и профессия. Вывести фамилии женщин с заданной профессией.
Код:

Program pr10;
uses CRT;
type
    br=record
            fio:string[15];
            god:integer;
            pol:char;
            prof:string[25];
    end;
mas=array[1..100] of br;
var
  pm,n:byte;
  a:mas;
  f:file of br;
  ch:char;
  imfile:string[15];
  g:br;
Procedure enter(var g:br);
  begin
        writeln(‘Введите фамилию работник:');
        readln(g.fio);
        writeln(Введите год рождения работника: ');
        readln(g.god);
        writeln(Введите стать работника (М\Ж)');
        readln(g.pol);
        g.pol :=upcase(g.pol);
        writeln(' Введите профессию работника ');
        readln(g.prof);
  end;

Procedure recf;
  var ch:char;
      i:byte;
begin
  rewrite(f);
  repeat
        clrscr;
        enter(g);
        write(f,g);
  writeln('Еще?(Y/N)');
  readln(ch);
  until upcase(ch)='N';
  close(f);
end;
Procedure readf(var n:byte; var a:mas);
  var i:byte;
  begin
  i:=0;
  reset(f);
  while not eof(f) Do
        begin
              i:=i+1;
              read(f,a[i]);
        end;
        n:=i;
        close(f);
  end;

Procedure vief;
  var i:byte;
begin
    clrscr;
    writeln(' -- --------------- ---------------- ------- ------------------ ');
    writeln('|№ |  Ф.И.О    | Год рождения  | Стать |    Профессия    |');
    writeln(' -- --------------- ---------------- ------- ------------------ ');
    readf(n,a);
    for i:=1 to n do
        begin
              writeln('|',i:2,'|',a[i].fio:15,'|',a[i].god:16,'|',a[i].pol:7,'|',a[i].prof:18,'|');
        end;
    writeln(' -- --------------- ---------------- ------- ------------------ ');
end;
Procedure add;
var ch:char;
begin
    reset(f);
    seek(f,filesize(f));
    repeat
    clrscr;
    enter(g);
    write(f,g);
    writeln('Ще?(Y/N)');
    readln(ch);
    until upcase(ch)='N';
    close(f);
end;
Procedure edit;
var ch:char;
    ner:byte;
begin
    clrscr;
    vief;
    reset(f);
    repeat
    writeln('Введите номер записи который надо отредактироваь:');
    readln(ner);
    seek(f,ner);
    enter(g);
    write(f,g);
    writeln('Еще?(Y/N)');
    readln(ch);
    until upcase(ch)='N';
    close(f);
end;
Procedure filt;
var proff:string[25];
    i:byte;
begin
    writeln('Введите профессию:');
    readln(proff);
    writeln(' --------------- ---------------- ------- ------------------ ');
    writeln('|№ |  Ф.И.О    | Год рождения  | Стать |    Профессия    |');
    writeln(' --------------- ---------------- ------- ------------------ ');
    readf(n,a);
    for i:=1 to n Do
    begin
    if (a[i].pol='Ж') and (a[i].prof=proff) then writeln('|',a[i].fio:15,'|',a[i].god:16,'|',a[i].pol:7,'|',a[i].prof:18,'|');
    end;
    writeln(' ----------------------------------------------------------- ');
end;
Procedure del;
var ndr:byte;
    ch:char;
    i:byte;
begin
    repeat
    vief;
    writeln('Введите номер записи который надо удалить:');
    readln(ndr);
    a[ndr].fio:='DELETED';
      rewrite(f);
    for i:=1 to n Do
        if a[i].fio <> 'DELETED' then write(f,a[i]);
    writeln('Еще?(Y/N)');
    readln(ch);
    until upcase(ch)='N';

    close(f);
end;
begin
repeat
writeln('Введите имя файла для работы:');
readln(imfile);
assign(f,imfile);
clrscr;
Writeln('Меню:');
writeln('1.Запись в файл');
writeln('2.Просмотр');
writeln('3.Добавить запись');
writeln('4.Редактировать');
writeln('5.Фильтр');
writeln('6.Удаление записей');
writeln('Выход');
writeln('Выберите:');
read(pm);
        case pm of
              1:recf;
              2:vief;
              3:add;
              4:edit;
              5:filt;
              6:del;
              7:Exit;
        end;
        until pm>6;
end.


Сёмка 06.01.2009 14:58

:confused:

herfleisch 08.01.2009 03:30

Цитата:

Сообщение от Сёмка
...надеюсь вы поможете найти мне ошибку.
Я спать...

Прости, но какую ошибку? Ты уже хоть что-то сделал? Выкладывай свои исходники - мы в них найдём ошибку, поможем.


Время: 15:23