У вас вопросы?
У нас ответы:) SamZan.net

sozdnienl write2

Работа добавлена на сайт samzan.net: 2015-07-10

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 15.3.2025

Листинг программы

domains

file=df

i=integer

list=i*

Z=integer

predicates

summa(list,real)

menu

repeat

process(i)

error

input(symbol)

read

print

readlist(list)

printlist(list)

dlina(list,integer)

delete(list,integer,list)

newlist(list,list)

clauses

repeat.

repeat:-repeat.

menu():-repeat,clearwindow,

 write("1.sozdanie"),nl,

 write("2.dobavlenie"),nl,

 write("3.modifikaciya"),nl,

 write("4.udalenie"),nl,

 write("5.prosmotr"),nl,

 write("6.obrabotka"),nl,

 write("7.vyhod"),nl,nl,

 write("vybor (1-7): "),nl,readint(X),

 process(X),X=7,!.

process(X):-X<1,error.

process(X):-X>7,error.

process(7):-write("press any key... \n"),readchar(_).

process(1):-makewindow(1,13,15,"sozdanie",10,10,10,30),

      write("file name: "), readln(F),

      openwrite(df,F),

      write("budite vvodit? (y/n): "),

      readln(C),input(C),closefile(df),

      removewindow.

process(2):-makewindow(2,13,15,"dobavlenie",10,10,10,30),

      write("file name: "),readln(F),

      openappend(df,F),

      input("y"),closefile(df),removewindow.

process(3):-makewindow(3,13,15,"modificirovanie",10,10,10,30),

      write("file name: "),readln(F),

      openmodify(df,F),

      write("nomer zapsisi: "),readint(M),I=(M-1)*7,

      readdevice(df),

      filepos(df,I,0), readint(C),readdevice(keyboard),

      write("znachenie: ",C),nl,

      write("novoe znachenie: "),readint(D),

      writedevice(df), filepos(df,I,0),writef("%5.0",D),nl,

      writedevice(screen),closefile(df),removewindow.

process(4):-makewindow(4,13,15,"udalenie",10,10,10,30),

        write("file name:: "),readln(F),

        openread(df,F),readdevice(df),

        readlist(L),readdevice(keyboard),closefile(df),

     write("Nomer zapisi: "),readint(K),delete(L,K,L1),

      openwrite(df,F),writedevice(df),printlist(L1),

      writedevice(screen),closefile(df),removewindow.

process(5):-makewindow(5,13,15,"prosmotr",10,10,10,30),nl,

      write("file name:: "),readln(F),

      openread(df,F),readdevice(df),

      print,readdevice(keyboard),readchar(_),

      closefile(df),removewindow.       

process(6):-makewindow(6,13,15,"obrabotka",10,10,10,30),nl,

     write("file name:: "),readln(F),

     openread(df,F),readdevice(df),

     readlist(L),readdevice(keyboard),

     closefile(df),newlist(L,L1),summa(L1,S),nl,write("summa: ",S),readchar(_),

     openwrite(df,"work.txt"),writedevice(df),

     printlist([S]),writedevice(screen),

     closefile(df),removewindow.

error:-nl,write("net takogo punkta!"),readchar(_).

input("n"):-!.

input("y"):-write("vvedite element: "), read,write("budete vvodit? (y/n)?"),

readln(C),input(C).

read:-readint(N),!,writedevice(df),writef("%5.0",N),nl,writedevice(screen).

print:-not(eof(df)),!,readln(N),write(N),nl,print.

print:-readdevice(keyboard).

readlist([]):-eof(df),!.

readlist([H|L]):-readint(H),readlist(L).

printlist([H|L]):-!,writef("%5.0",H),nl,printlist(L).

printlist([]).

dlina([],0).

dlina([_|L],N):-dlina(L,N1),N=N1+1.

delete([_|L],1,L).

delete([X|L],K,[X|L1]):-K>1,K1=K-1,delete(L,K1,L1).

newlist([],[]).

newlist([H|L],[H|L1]):-H>0,newlist(L,L1).

newlist([H|L],L1):-H<=0,newlist(L,L1).

summa([],0).

summa([X|L],S):-newlist(L,L1),summa(L1,S1),S=S1+X.

Тестирование:

  1.  Создание файла

  1.  Добавление информации в файл

  1.  Модификация записей в файле:

  1.  Удаление записей из файла

  1.  Просмотр записей в файле:

  1.  Обработка информации в файле – найти сумму положительных элементов

  1.  Выход из программы

Вывод: Для выполнения лабораторной работы было предложено создать программу работы с файлами целых чисел. Выполнение данной задачи основано на реализации функций обработки файлов, таких как: а) создание файла; б) добавление элемента в файл; в) модификацию данных в файле; г) удаление элемента в файл; д) просмотр файла (вывод на экран); ж) найти сумму положительных элементов файла. Решение представленной задачи позволяет разработать пролог-программу обработки файлов с созданием среды пользователя с помощью многооконных меню, которую в дальнейшем можно модифицировать под другие задачи.




1. Обгрунтуйте вплив факторів на наслідки ураження електричним струмом Сила струму
2. Целью курсового проекта было создать новостной футбольный сайт
3. 1 Настоящий федеральный государственный образовательный стандарт среднего профессионального образования
4. это число частиц в 1 моле любого вещества; N 60221023 моль 1
5. как вымощенная в самых разъезженных местах схваченная бревнами но в остальном мало изменившаяся с прежних
6. Криоэлектроника
7. тематики Гра ldquo;Математичний боксrdquo;
8. Техносферная безопасность профили- Безопасность технологических процессов Инженерн
9. Семейное насилие и его последствия
10. К.- Центр духовної культури 2005