![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
![]()
Сообщение
#1
|
|
![]() МСМK ![]() Группа: Супермодераторы Сообщений: 9276 Регистрация: 22.11.2005 Из: Салтыковка Пользователь №: 2 Skype: al-alex.new Реальное имя: Алексей Учебная группа: ппс ![]() |
надо срочно решить 2 задачки на паскале
кто может?
Прикрепленные файлы
-------------------- Осталось недолго!
|
|
|
![]() |
![]()
Сообщение
#2
|
|
![]() Жутко ленивый. ![]() Группа: Администраторы Сообщений: 2661 Регистрация: 22.11.2005 Из: Москва, Марьино Пользователь №: 1 Skype: dudnikov.v Реальное имя: Владимир ![]() |
Списки:
program prog; type node_ptr = ^list_node; list_node = record{Объявили запись элемента списка} prev, next:node_ptr;{Указатели на предыдущий и последующий элементы} data:integer;{Данные элемента списка} end; procedure add_node( var start: node_ptr; data: integer; position: integer); var node,ptr: node_ptr; idx: integer; begin new(node); node^.prev := nil; node^.next := nil; node^.data := data; if(position > 0) then{проверяем, что номер узла существует} begin if(start = nil) then{если список пустой, то создаем его заново} begin start := node; end else if(position = 1) then begin node^.next := start;{ставим узел в начало списка} start^.prev := node; start := node; end else begin ptr := start; idx := 2; while (idx<position) and (ptr^.next <> nil) do{ищем узел с заданным номером или последний узел} begin inc(idx); ptr := ptr^.next; end; node^.next := ptr^.next; ptr^.next := node; node^.prev := ptr;{добавляем узел после заданного} if( node^.next <> nil ) then begin node^.next^.prev := node; end; end; end; end; procedure print_list( start: node_ptr); begin write( '['); while( start <> nil ) do begin write( start^.data, ' '); start := start^.next; end; writeln( ']'); end; var ptr: node_ptr; begin ptr := nil; add_node( ptr, 1, 1); print_list( ptr ); add_node( ptr, 7, 1); add_node( ptr, 8, 2); add_node( ptr, 13, 5); print_list( ptr ); end. Нужная процедура - add_node. -------------------- Не говори мне что мне делать и я не скажу куда тебе идти. |
|
|
![]()
Сообщение
#3
|
|
![]() б.р. ![]() Группа: Активисты Сообщений: 12 Регистрация: 14.10.2008 Из: Общага МИФИ Пользователь №: 200 Skype: laer-0 (Ефимов Василий) Реальное имя: Василий Ефимов Учебная группа: Б3-02 ![]() |
Задача 13.1
type {определяем тип входного файла} intype = record sLastName:String; iCourse:integer; iaMarks: array[1..5]of integer; end; {определяем тип выходного файла} outtype = record sLastName:String; iCourse:integer; iEMark:integer; end; var ts:String; i:integer; inElement:intype; outElement:outtype; outFile:file of outtype; inFile:file of intype; begin {открываем и нициализируем для чтения входной файл} assign(inFile,'inFile.bin'); reset(inFile); {открываем и инициализируем для записи выходной файл} assign(outFile,'outFile.bin'); rewrite(outFile); while not EOF(inFile) do begin read(inFile,inElement); Writeln('Считано:'); writeln('Фамилия: ',inElement.sLastName,', Курс: ',inElement.iCourse, ', Оценки: ',inElement.iaMArks[1],',',inElement.iaMArks[2],',', inElement.iaMArks[3],',',inElement.iaMArks[4],',' , inElement.iaMArks[5]) ; outElement.sLastName:=inElement.sLastName; outElement.iCourse:=inElement.iCourse; for i:=1 to 5 do begin outElement.iEMark:=outElement.iEMark+inElement.iaMArks[i]; end; outElement.iEMark:=outElement.iEMark div 5; Writeln('Записано:'); writeln('Фамилия: ',outElement.sLastName,', Курс: ',outElement.iCourse, ', Средняя оценка: ',outElement.iEMArk) ; write(outFile,outElement); end; close (outFile); close(inFile); readln(ts);end. |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 16th June 2025 - 07:50 |