Автор статьи
Валерия
Эксперт по сдаче вступительных испытаний в ВУЗах
Основная часть
Задача 1 Используйте линейные списки для хранения последовательности чисел. Опишите процедуру, которая удаляет: а) из списка второй элемент, если такой есть; б) из непустого списка последний элемент. Используемые переменные N – данные списка (количество элементов списка); X – указатель на элемент списка; L, p, s – списки; i – счетчик цикла. Алгоритм решения задачи 1. Создадим список – введем количество элементов и заполним список элементами; 2. Выводим полученный список на экран; 3. Вызываем процедуру, которая формирует новый список из исходного – в случае, если второй (следующий за первым) узел списка не пуст, он удаляется из списка; 4. Выводим новый список на экран; 5. Вызываем процедуру, которая формирует новый список из исходного – первый узел списка сохраняется в промежуточной переменной, узлы переданного списка просматриваются в цикле, и в случае, если достигнут последний элемент списка, он удаляется из него; 6. Выводим полученный список на экран. Исходный код программы {- описание типа списка -} type list = ^node; node = record info: integer; next: list; end; {- описание переменных -} var s, l: list; x, n, i: integer; { — процедура, которая из списка L удаляет последний элемент — } procedure remove_last(var l: list); var p: list; begin if l^.next = nil then begin dispose(l); l := nil; end else begin p := l; while p^.next^.next <> nil do p := p^.next; dispose(p^.next); p^.next := nil; end; end; { — процедура, которая из списка L удаляет второй элемент — } procedure remove_second(var l: list); var p: list; begin if l^.next <> nil then l^.next := l^.next^.next; end; {- процедура печати списка L -} procedure out_list(l: list); begin while l <> nil do begin s := l^.next; write(l^.info, ‘ ‘); l := s; end; writeln; end; {- процедура освобождения памяти, выделенной для каждого из списков -} procedure free_list(var l: list); begin while l <> nil do begin s := l^.next; dispose(l); l := s; end; end; begin {формируем список} s := nil; write(‘Введите количество элементов списка: ‘); readln(n); writeln(‘Введите элементы списка по одному: ‘); for i := 1 to n do begin new(l); l^.next := s; readln(x); l^.info := x; s := l; end; {выводим список на экран} writeln(‘Введенный список: ‘); out_list(l); {- формируем новый список и выводим его -} remove_second(l); writeln(‘Список после удаления второго элемента: ‘); out_list(l); remove_last(l); writeln(‘Список после удаления последнего элемента: ‘); out_list(l); {- освобождаем память -} free_list(l); readln; end.Задача 2
Построить лемнискату — кривую, уравнение которой в полярных координатах = a√2 cos(2), a > 0. Используемые переменные x, x0 – расположение графического объекта для представления элемента по оси абсцисс; y, y0 – расположение графического объекта для представления элемента по оси ординат; m – переменная для отрисовки координатной сетки; a – коэффициент; r – значение формулы; f – величина угла; s – строка с надписями; i – счетчик цикла. Алгоритм решения задачи 1.Инициируем модуль graph; 2.Устанавливаем начальные значения переменных; 3.В цикле рисуем линии и подписи координатной сетки; 4.Кладем f = 0. 5.Пока f не превосходит удвоенного числа пи, выполнить: 5.1Найти новое значение r для f в точке (x, y); 5.2Поставить r на форме; 5.3Увеличить f на величину шага. Исходный код программы uses graphABC; var x0, y0, i, x, y: integer; r, a, m, f: real; s: string; begin a := 2; x0 := windowwidth div 2; y0 := windowheight div 2; m := (x0 — 50) / (a * sqrt(2)); line(0, y0, 2 * x0, y0); line(x0, 0, x0, 2 * y0); for i := 1 to 2 * (trunc(a * sqrt(2)) + 1) do begin line(x0 + round(i * m / 2), y0 — 3, x0 + round(i * m / 2), y0 + 3); line(x0 — round(i * m / 2), y0 — 3, x0 — round(i * m / 2), y0 + 3); line(x0 + 3, y0 — round(i * m / 2), x0 — 3, y0 — round(i * m / 2)); line(x0 + 3, y0 + round(i * m / 2), x0 — 3, y0 + round(i * m / 2)); str(i / 2:0:1, s); textout(x0 + round(i * m / 2), y0 + 10, s); textout(x0 — round(i * m / 2), y0 + 10, ‘-‘ + s); textout(x0 — 20, y0 — round(i * m / 2), s); textout(x0 — 25, y0 + round(i * m / 2), ‘-‘ + s); end; f := 0; while f <= 2 * pi do begin if cos(2 * f) >= 0 then begin r := a * sqrt(2 * cos(2 * f)); x := x0 + round(r * cos(f) * m); y := y0 — round(r * sin(f) * m); setpixel(x, y, clRed); end; f := f + 0.001; end; end. Блок-схемы Рисунок 1. Блок-схема к задаче 1 Рисунок 2. Блок-схема к задаче 2 Тестирование программ Рисунок 3. Результат работы программы для задания 1 Рисунок 4. Вид окна программы для задания 2 в процессе работы программы Заключение В ходе выполнения лабораторной работы были изучены базовые структуры данных, такие как линейные односвязные списки, и основные функции для работы со списками, а также изучен модуль GraphABC для создания программ в графическом режиме на языке программирования Pascal. Были выполнены две программы по каждой из этих тем, построены блок-схемы и описаны алгоритмы их решения.
О сайте
Ссылка на первоисточник:
https://фэк.рф
Поделитесь в соцсетях:
Оставить комментарий
Inna Petrova 18 минут назад
Нужно пройти преддипломную практику у нескольких предметов написать введение и отчет по практике так де сдать 4 экзамена после практики
Иван, помощь с обучением 25 минут назад
Inna Petrova, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Коля 2 часа назад
Здравствуйте, сколько будет стоить данная работа и как заказать?
Иван, помощь с обучением 2 часа назад
Николай, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Инкогнито 5 часов назад
Сделать презентацию и защитную речь к дипломной работе по теме: Источники права социального обеспечения. Сам диплом готов, пришлю его Вам по запросу!
Иван, помощь с обучением 6 часов назад
Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Василий 12 часов назад
Здравствуйте. ищу экзаменационные билеты с ответами для прохождения вступительного теста по теме Общая социальная психология на магистратуру в Московский институт психоанализа.
Иван, помощь с обучением 12 часов назад
Василий, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Анна Михайловна 1 день назад
Нужно закрыть предмет «Микроэкономика» за сколько времени и за какую цену сделаете?
Иван, помощь с обучением 1 день назад
Анна Михайловна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Сергей 1 день назад
Здравствуйте. Нужен отчёт о прохождении практики, специальность Государственное и муниципальное управление. Планирую пройти практику в школе там, где работаю.
Иван, помощь с обучением 1 день назад
Сергей, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Инна 1 день назад
Добрый день! Учусь на 2 курсе по специальности земельно-имущественные отношения. Нужен отчет по учебной практике. Подскажите, пожалуйста, стоимость и сроки выполнения?
Иван, помощь с обучением 1 день назад
Инна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Студент 2 дня назад
Здравствуйте, у меня сегодня начинается сессия, нужно будет ответить на вопросы по русскому и математике за определенное время онлайн. Сможете помочь? И сколько это будет стоить? Колледж КЭСИ, первый курс.
Иван, помощь с обучением 2 дня назад
Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Ольга 2 дня назад
Требуется сделать практические задания по математике 40.02.01 Право и организация социального обеспечения семестр 2
Иван, помощь с обучением 2 дня назад
Ольга, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Вика 3 дня назад
сдача сессии по следующим предметам: Этика деловых отношений - Калашников В.Г. Управление соц. развитием организации- Пересада А. В. Документационное обеспечение управления - Рафикова В.М. Управление производительностью труда- Фаизова Э. Ф. Кадровый аудит- Рафикова В. М. Персональный брендинг - Фаизова Э. Ф. Эргономика труда- Калашников В. Г.
Иван, помощь с обучением 3 дня назад
Вика, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Игорь Валерьевич 3 дня назад
здравствуйте. помогите пройти итоговый тест по теме Обновление содержания образования: изменения организации и осуществления образовательной деятельности в соответствии с ФГОС НОО
Иван, помощь с обучением 3 дня назад
Игорь Валерьевич, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Вадим 4 дня назад
Пройти 7 тестов в личном кабинете. Сооружения и эксплуатация газонефтипровод и хранилищ
Иван, помощь с обучением 4 дня назад
Вадим, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Кирилл 4 дня назад
Здравствуйте! Нашел у вас на сайте задачу, какая мне необходима, можно узнать стоимость?
Иван, помощь с обучением 4 дня назад
Кирилл, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Oleg 4 дня назад
Требуется пройти задания первый семестр Специальность: 10.02.01 Организация и технология защиты информации. Химия сдана, история тоже. Сколько это будет стоить в комплексе и попредметно и сколько на это понадобится времени?
Иван, помощь с обучением 4 дня назад
Oleg, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Валерия 5 дней назад
ЗДРАВСТВУЙТЕ. СКАЖИТЕ МОЖЕТЕ ЛИ ВЫ ПОМОЧЬ С ВЫПОЛНЕНИЕМ практики и ВКР по банку ВТБ. ответьте пожалуйста если можно побыстрее , а то просто уже вся на нервяке из-за этой учебы. и сколько это будет стоить?
Иван, помощь с обучением 5 дней назад
Валерия, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Инкогнито 5 дней назад
Здравствуйте. Нужны ответы на вопросы для экзамена. Направление - Пожарная безопасность.
Иван, помощь с обучением 5 дней назад
Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Иван неделю назад
Защита дипломной дистанционно, "Синергия", Направленность (профиль) Информационные системы и технологии, Бакалавр, тема: «Автоматизация приема и анализа заявок технической поддержки
Иван, помощь с обучением неделю назад
Иван, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru
Дарья неделю назад
Необходимо написать дипломную работу на тему: «Разработка проекта внедрения CRM-системы. + презентацию (слайды) для предзащиты ВКР. Презентация должна быть в формате PDF или формате файлов PowerPoint! Институт ТГУ Росдистант. Предыдущий исполнитель написал ВКР, но работа не прошла по антиплагиату. Предыдущий исполнитель пропал и не отвечает. Есть его работа, которую нужно исправить, либо переписать с нуля.
Иван, помощь с обучением неделю назад
Дарья, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru