Массивы

Тема в разделе "Visual Basic", создана пользователем Kintaro, 20 май 2013.

  1. Kintaro

    Kintaro New Member

    Регистрация:
    20 май 2013
    Сообщения:
    3
    Симпатии:
    0
    Вот смотрю я на количество ответов других топиков, и думаю: хоть кто нить поможет или нет :D ?
    Помогите написать программы (точнее будет-напишите) Пожалуйста.

    1. МАССИВЫ ЗАПИСЕЙ
    ЦЕЛЬ РАБОТЫ. Создать массив записей в соответствии с заданной структурой. Количество записей не больше 10. Реализовать редактирование записей (изменение, добавление, удаление). Исходные данные должны вводиться с проверкой на область допустимых значений. Все действия пользователя должны контролироваться и снабжаться осмысленными сообщениями. Реализовать в соответствии со своим вариантом запрос и вывод содержимого записи по определенным ключам.
    Безы.jpg
    Предусмотреть вывод значений для полей элементов массива записей по следующим ключам: по названию фирмы-подрядчика, по стоимости строения, по типу строения, по сумме вклада банке.

    ЗАПРОСЫ
    Определить тип постройки, который клиенты заказывали более 2-х раз.

    2.МНОЖЕСТВА
    Пусть заданы множества А, В, С вывести напечатать общие элементы всех множеств.

    3.ФАЙЛЫ ЗАПИСЕЙ (ТИПИЗИРОВАННЫЕ ФАЙЛЫ)
    Взяв за основу контрольную работу № 1 (массивы записей), реализовать ввод и обработку записей, используя типизированные файлы (файлы записей).
    В программе должны быть предусмотрены соответствующие процедуры и функции, корректно обрабатывающие входные данные, ввод-вывод файлов базы данных.
     
  2. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    Сроки какие? В принципе можно и сделать
     
  3. Kintaro

    Kintaro New Member

    Регистрация:
    20 май 2013
    Сообщения:
    3
    Симпатии:
    0
    сроки- край 23.05.13. Но с преподом можно договориться и потом принести
     
  4. Kintaro

    Kintaro New Member

    Регистрация:
    20 май 2013
    Сообщения:
    3
    Симпатии:
    0
    по первой/третей к.р. есть подобная задачка, как исходник могу скинуть.

    program

    uses mod3,mod4;
    var s:string;
    c,n:integer;
    a:mas;
    begin
    s:='mar.dat';
    repeat
    writeln('veberite deystvie');
    writeln('1-vvod 2-vyvod vseh dannyh 3-poisk po adresu 4-po imeni 5-po advokatu ');
    writeln('6-po notasriusu 7- po rayony 8-izmenenie 9-udalenie 10-dobavlenie 11-vyhod');
    readln©;
    case c of
    1:init(s);
    2:vyvod(s);
    3:vyvod_adr(s);
    4:vyvod_name(s);
    5:vyvod_adv(s);
    6:vyvod_not(s);
    7:vyvod_ray(s);
    8:begin red(s,a,n);izmen(a,n);writ(s,a,n);end;
    9:begin red(s,a,n);udal(s,a,n);end;
    10:begin red(s,a,n);dobav(a,n);writ(s,a,n)end;
    end;
    until c=11;
    end.
    --------------------------------------------------
    mod3.

    unit mod3;
    interface
    type
    adres=record
    ray,ul:string[15];
    dom:integer;
    end;
    info=record
    nom:longint;
    fio:string[30];
    end;
    kons=record
    adr:adres;
    name:string[20];
    adv,notr:info;
    end;
    procedure init(filename:string);
    procedure vyv(i:integer;a:kons);
    procedure vyvod(filename:string);
    procedure vyvod_adr(filename:string);
    procedure vyvod_name(filename:string);
    procedure vyvod_adv(filename:string);
    procedure vyvod_not(filename:string);
    procedure vyvod_ray(filename:string);
    implementation
    procedure init(filename:string);
    var f:file of kons;
    a:kons;
    i,n:integer;
    begin
    assign(f,filename);
    rewrite(f);
    writeln('vvedite kol-vo konsultazyy');
    readln(n);
    writeln('vvedite dannye');
    for i:=1 to n do
    begin
    writeln('konsultaziya ',i);
    write('nazvanie->');readln(a.name);
    write('rayon->');readln(a.adr.ray);
    write('nomer doma->');readln(a.adr.dom);
    write('uliza->');readln(a.adr.ul);
    write('advokat FIO->');readln(a.adv.fio);
    write('advokat telefon->');readln(a.adv.nom);
    write('notarius FIO->');readln(a.notr.fio);
    write('notarius telefon->');readln(a.notr.nom);
    write(f,a);
    end;
    close(f);
    end;
    procedure vyv(i:integer;a:kons);
    begin
    writeln('konsultaziya ',i,' ' ,a.name);
    writeln('adress ',a.adr.ray,' nomer doma ',a.adr.dom,' uliza ',a.adr.ul);
    writeln('advokat ',a.adv.fio,' telefon ',a.adv.nom);
    writeln('notarius ',a.notr.fio,' telefon ',a.notr.nom);
    writeln;
    end;
    procedure vyvod(filename:string);
    var f:file of kons;
    a:kons;
    i:integer;
    begin
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    i:=i+1;
    read(f,a);
    vyv(i,a);
    end;
    close(f);
    end;
    procedure vyvod_adr(filename:string);
    var f:file of kons;
    a:kons;
    i,n:integer;
    s:string;
    begin
    writeln('vvedite ulizu');
    readln(s);
    writeln('vvedite nomer doma');
    readln(n);
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    read(f,a);
    if (a.adr.ul=s)and(a.adr.dom=n) then
    begin
    i:=i+1;
    vyv(i,a);
    end;
    end;
    close(f);
    if i=0 then writeln('konsultazyy po dannomu adressu net');
    end;
    procedure vyvod_name(filename:string);
    var f:file of kons;
    a:kons;
    i:integer;
    s:string;
    begin
    writeln('vvedite nazvanie');
    readln(s);
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    read(f,a);
    if (a.name=s) then
    begin
    i:=i+1;
    vyv(i,a);
    end;
    end;
    close(f);
    if i=0 then writeln('konsultazyy s takim nazvaniem net');
    end;
    procedure vyvod_adv(filename:string);
    var f:file of kons;
    a:kons;
    i:integer;
    s:string;
    n:longint;
    begin
    writeln('vvedite FIO advokata');
    readln(s);
    writeln('vvedite telefon advokata');
    readln(n);
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    read(f,a);
    if (a.adv.fio=s)or(a.adv.nom=n) then
    begin
    i:=i+1;
    vyv(i,a);
    end;
    end;
    close(f);
    if i=0 then writeln('advokatov s takim FIO ili nomerom telefona net');
    end;
    procedure vyvod_not(filename:string);
    var f:file of kons;
    a:kons;
    i:integer;
    s:string;
    n:longint;
    begin
    writeln('vvedite FIO notariusa');
    readln(s);
    writeln('vvedite telefon notariusa');
    readln(n);
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    read(f,a);
    if (a.notr.fio=s)or(a.notr.nom=n) then
    begin
    i:=i+1;
    vyv(i,a);
    end;
    end;
    close(f);
    if i=0 then writeln('notariuson s takim FIO ili nomerom telefona net');
    end;
    procedure vyvod_ray(filename:string);
    var f:file of kons;
    a:kons;
    i:integer;
    s:string;
    begin
    writeln('vvedite nazvanie rayona');
    readln(s);
    assign(f,filename);
    reset(f);
    i:=0;
    while not eof(f) do
    begin
    read(f,a);
    if (a.adr.ray=s) then
    begin
    i:=i+1;
    vyv(i,a);
    end;
    end;
    close(f);
    if i=0 then writeln('konsultazyy s dannom rayone net');
    end;
    end.

    --------------------------------------------------
    mod4.

    unit mod4;
    interface
    uses mod3;
    type mas=array[1..15] of kons;
    procedure red(filename:string;var a:mas;var n:integer);
    procedure writ(filename:string; a:mas;n:integer);
    procedure izmen(var a:mas;n:integer);
    procedure udal(filename:string;a:mas;n:integer);
    procedure dobav(var a:mas;var n:integer);
    implementation
    procedure red(filename:string;var a:mas;var n:integer);
    var f:file of kons;
    begin
    assign(f,filename);
    reset(f);
    n:=0;
    while not eof(f) do
    begin
    n:=n+1;
    read(f,a[n]);
    end;
    close(f);
    end;
    procedure writ(filename:string; a:mas;n:integer);
    var f:file of kons;
    i:integer;
    begin
    assign(f,filename);
    rewrite(f);
    for i:=1 to n do
    write(f,a);
    close(f);
    end;
    procedure izmen(var a:mas;n:integer);
    var k:integer;
    begin
    writeln('vvedite nomer izmenyaemoy zapisi');
    readln(k);
    if k<n then
    begin
    writeln('vvedite dannye');
    write('nazvanie->');readln(a[k].name);
    write('rayon->');readln(a[k].adr.ray);
    write('nomer doma->');readln(a[k].adr.dom);
    write('uliza->');readln(a[k].adr.ul);
    write('advokat FIO->');readln(a[k].adv.fio);
    write('advokat telefon->');readln(a[k].adv.nom);
    write('notarius FIO->');readln(a[k].notr.fio);
    write('notarius telefon->');readln(a[k].notr.nom);
    end else writeln('takoe net');
    end;
    procedure udal(filename:string;a:mas;n:integer);
    var k:integer;
    f:file of kons;
    i:integer;
    begin
    writeln('vvedite nomer udalyaemoy zapisi');
    readln(k);
    if k<n then
    begin
    assign(f,filename);
    rewrite(f);
    for i:=1 to n do
    if i<>k then write(f,a);
    close(f);
    end else writeln('takoe net');
    end;
    procedure dobav(var a:mas;var n:integer);
    var k:integer;
    begin
    k:=n+1;
    writeln('vvedite dannye dlya dobavleniya');
    write('nazvanie->');readln(a[k].name);
    write('rayon->');readln(a[k].adr.ray);
    write('nomer doma->');readln(a[k].adr.dom);
    write('uliza->');readln(a[k].adr.ul);
    write('advokat FIO->');readln(a[k].adv.fio);
    write('advokat telefon->');readln(a[k].adv.nom);
    write('notarius FIO->');readln(a[k].notr.fio);
    write('notarius telefon->');readln(a[k].notr.nom);
    n:=k;
    end;
    end.
     
  5. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    Kintaro
    разве это визуал бейсик?
    Стучись в мыло (в подписи)
    Могу сделать на VB6
     
Загрузка...
Похожие Темы - Массивы
  1. Искушенный
    Ответов:
    0
    Просмотров:
    430
  2. Искушенный
    Ответов:
    1
    Просмотров:
    416
  3. Искушенный
    Ответов:
    1
    Просмотров:
    383
  4. Rpp
    Ответов:
    1
    Просмотров:
    809
  5. romanovbadboy2
    Ответов:
    0
    Просмотров:
    669

Поделиться этой страницей