Основы алгоритмизации и программирования

История развития языка программирования Pascal, его основные концепции. Вычисления в математических задачах. Изменение порядка выполнения инструкций программы. Выполнение оператора цикла. Логические выражения, линейные алгоритмы, условные операторы.

Рубрика Программирование, компьютеры и кибернетика
Вид методичка
Язык русский
Дата добавления 10.01.2013
Размер файла 847,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Управление образования г.Астана

Колледж Менеджмента и бизнеса

Отчет

о прохождении учебной практики

по присвоению профессии «Основы алгоритмизации и программирования»

Студент 2 курса специальности

1304000 «Вычислительная техника и программное обеспечение»

Цылёв Вадим

г. Астана 2013 г

Введение

История языка Pascal

Язык программирования Pascal был разработан в 1968-1971 гг. Никлаусом Виртом в Цюрихском институте информатики (Швейцария). Первоначальная цель разработки языка PASCAL - необходимость инструмента "для обучения программированию как систематической дисциплине". Однако очень скоро обнаружилась чрезвычайная эффективность языка PASCAL в самых разнообразных приложениях, от решения небольших задач вычислительного характера до разработки сложных программных систем - компиляторов, баз данных, операционных систем и т.д. К настоящему времени Pascal принадлежит к группе наиболее распространенных и популярных в мире языков программирования. Существуют многочисленные реализации языка практически для всех машинных архитектур, разработаны десятки диалектов и проблемно-ориентированных расширений языка Pascal.

Основные концепции языка были разработаны в 1967-1968г. профессором Николаусом Виртом (NiklausWirth). Стандарт языка был разработан им в 1974г. (PASCAL - User Manualand Report, ISO Pascal Standard Kathleen Jensenand Niklaus Wirth) совместно с Кетлин Йенсен (Kathleen Jensen). Паскаль достаточно быстро превратился из средства, предназначенного для обучения студентов программированию, в инструмент, который стали использовать для создания больших программных проектов.

В настоящее время действуют три стандарта языка. Первый из них - нерасширенный Паскаль (unextended Pascal) был разработан в 1983 году. Второй - Extended Pascal - содержит расширения, касающиеся модульного программирования (раздельная компиляция модулей, импорт-экспорт подпрограмм, интерфейсная часть и реализация), и дополнен рядом процедур и функций (прямой доступ к файлам, работа со строками и т д). Последний - объектный Паскаль (Object-Oriented Extensionsto Pascal), в отличие от первых двух, формально не утвержден, но оформлен в виде отчета (ANSI Technical Report) в 1993г. Объектный Паскаль поддерживает классы, обладающие свойствами и методами, наследование классов, переопределение методов у потомков (полиморфизм) и ряд других атрибутов объектно-ориентированного программирования.

1.Теоретическая часть

Цель: Закрепить и углубить теоретические знания языка программирования на практике, по следующим темам: Вычисления в математических задачах; Логические выражения; Линейные алгоритмы; Условные операторы; Операторы выбора; Операторы цикла; Одномерные массивы; Двумерные массивы; Символы и строки; Файлы.

1. Повторить теоретический материал.

2. Закрепить теоретический материал.

3. Решить предложенные задачи на языке Паскаль.

4. Правильно оформить предложенные задачи в отчет.

5. Обзор языка программирования.

1.1 Основные определения

Алгоритмом-называется точное и понятное предписание исполнителю совершить последовательность действий направленных на решение поставленной задачи.

Линейным алгоритмом - называется вычислительный процесс, при котором все этапы решения задачи выполняются в естественном порядке следования записи этих этапов. Циклический алгоритм - это многократное повторяемый участок вычислений.

Перечислимый тип данных задается непосредственно перечислением всех значений, которые может принимать переменная данного типа. При описании отдельные значения указываются через запятую, а весь список заключается в круглые скобки. Например, Var Season: (winter, spring, summer, autum);

Temp: (23,24,25,26);

Строковыйтип:

Строка - в общем случае это последовательность символов. Строка представляет собой особую форму одномерного массива символов, которая имеет существенное отличие. Массив символов имеет фиксированную длину (количество элементов), которая определяется при описании. Строка имеет две разновидности длины:

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

Для определения данных строкового типа в TurboPascal 7.0 введены стандартные типы String и PChar.

1.2 Основные операторы

Условные операторы предназначены для изменения порядка выполнения инструкций программы, в соответствии с некоторым условием.

Оператор условия IF.

Он может принимать одну из следующих форм:

IFусловиеTHENоператор; (неполная форма)

Условие задаётся переменной и её соотношением с некоторой константой или значением выражения. Если условие выполняется, то будет выполнен указанный оператор.

IFусловиеTHENоператор 1 ELSEоператор 2; (полная форма)

Добавление к конструкции служебного слова ELSEпозволяет выполнить определенные действия в случае, когда условие не выполняются.

Операторы цикла

Для выполнения некоторого количества повторяющихся действий целесообразно использовать операторы цикла.

Циклы со счетчиком

При использовании цикла со счетчиком следует задать переменную-счетчик. При этом надо помнить, что тип такой переменной должен быть скалярным: Integer, Char, Boolean, перечисляемый тип.

For<начальное значение счетчика>To<конечное значение>Do<тело цикла>;

Счетчик меняется от меньшего к большему с шагом 1

For<начальное значение счетчика>Downto<конечное значение>Do<тело цикла>;

Счетчик меняется от большего к меньшему с шагом 1

Циклы с предусловием

Цикл с предусловием используется для программирования процессов, в которых число повторений оператора цикла не известно, а задается некоторое условие его окончания.

Операторцикла с предусловием

while<условие>do<тело цикла>;

Выполнение оператора цикла с предусловием начинается с проверки условия, записанного после слова while. Если оно соблюдается, то выполняется <тело цикла>, а затем вновь проверяется условие и т.д. Как только на очередном шаге окажется, что условие не соблюдается, то выполнение <тела цикла> прекратится.

В теле цикла обязательно должен быть оператор, влияющий на соблюдение условия, в противном случае произойдет зацикливание.

Циклы с постусловием.

Для программной реализации циклических процессов с неизвестным числом повторений существует ещё один оператор - оператор цикла с постусловием, который имеет следующий вид:

Операторцикла с постусловием

Repeat

<оператор 1>;

<оператор 2>;

...

<оператор n>;

Until <условие>;

где Repeat (повторять), Until (до тех пор, пока).

Этот оператор аналогичен оператору цикла с предусловием, но отличается от него тем, что проверка условия производится после очередного выполнения тела цикла. Это обеспечивает его выполнение хотя бы один раз.

Тип данных - это множество величин, объединенных определенной совокупностью доступных операций.

Одномерный массив - последовательность элементов. Число, которых фиксировано и которым присвоено одно имя.

Запись - это структура данных, состоящая из фиксированного числа компьютера, называется полями записи.

Множество в языке программирования Pascal представляет собой ограниченный, неупорядоченный набор различных элементов одного типа.

Строка - это последовательность символов ASCII (таблица кода). При использование в выражениях строка заключается в апострофы.

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

2. Практическая часть

2.1 Вычисления в математических задачах

Задача № 12

Треугольник задан величинами своих углов и радиусом описанной окружности. Найти стороны треугольника.

Ответ:

Задача № 28

Составить программу вычисления объема цилиндра и конуса, которые имеют одинаковую высоту Н и одинаковый радиус основания R.

Ответ:

Задача № 44

Дан произвольный треугольник ABC (рис. 54), для которого определен следующий набор характерных параметров: а, b, с -- стороны треугольника; б, в, г -- углы (в градусах); h -- высота, опущенная на сторону с; S -- площадь; Р -- периметр треугольника. По трем заданным параметрам вычислить все остальные.

Ответ:

2.2 Логические выражения

Задача № 12

Все цифры данного четырехзначного числа N различны

Ответ:

Задача № 22

Данное четырехзначное число читается одинаково слева направо и справа налево.

Ответ:

Задание № 28

Сумма двух последних цифр заданного трехзначного числа N меньше заданного числа К, а первая цифра больше 5.

Ответ

2.3 Линейные алгоритмы

Задача № 12

Дана площадь круга. Найти длину окружности, ограничивающей этот круг. В качестве значения Pi использовать 3.14.

Ответ

Задача № 16

Даны координаты трех вершин треугольника (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь.

Ответ

Задача № 20

Дано целое четырехзначное число. Используя операции div и mod, найти произведение его цифр.

pascal программа алгоритм оператор

Ответ

2.4 Условные операторы

Задача № 12

Ответ

Задача № 28

Дан номер некоторого года (положительное целое число). Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный -- 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 -- являются).

Ответ

Задача № 44

Программа -- льстец. На экране высвечивается вопрос «Кто ты: мальчик или девочка? Введи Д или М». В зависимости от ответа на экране должен появиться текст «Мне нравятся девочки!» или «Мне нравятся мальчики!».

Ответ

2.5 Операторы выбора

Задача № 12

Для целого числа А: от 1 до 99 напечатать фразу «Мне k лет», учитывая при этом, что при некоторых значениях k слово «лет» надо заменить на слово «год» или «года». Например, 11 лет, 22 года, 51 год.

ответ

Задача № 20

Даны два действительных положительных числа х и у. Арифметические действия над числами пронумерованы (1 -- сложение, 2 -- вычитание, 3 -- умножение, 4 -- деление). Составить программу, которая по введенному номеру выполняет то или иное действие над числами.

Ответ

Задача № 28

Дан номер месяца (1 -- январь, 2 -- февраль, ...) Вывести число дней в этом месяце для невисокосного года.

Ответ

2.6 Операторы цикла

Задача № 12

программу-генератор чисел Пифагора а, b, с (с2 = а2 + b2). В основу положить формулы: a = m2 -- n2, b = 2тп, с= m2+ п2 (т, п -- натуральные, 1 <m<k, 1 < п <k, k -- данное число). Результат вывести на экран в виде таблицы из пяти столбцов: т, п, а, b, с.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 28

Составить алгоритм решения ребуса МУХА + МУХА + МУХА = СЛОН (различные буквы обозначают различные цифры, старшая -- не 0).

Ответ

Задача № 44

Дано вещественное число X и целое число N (> 0). Вывести 1 + X + X2/2! + ... + XN/N! (N! = 1·2·...·N). Полученное число является приближенным значением функции exp в точке X.

Ответ

Задача № 60

Дано целое число K и набор ненулевых целых чисел; признак его завершения -- число 0. Вывести количество чисел в наборе, меньших K.

Ответ

2.7 Одномерные массивы

Задача № 12

Даны натуральные числа а1, а2,..., аn. Указать те из них, у которых остаток от деления на М равен L (0 ? L ? M-1).

Ответ

Задача № 28

Заполнить массив из N элементов с начальным значением заданным А [0] ? 0, по принципу A[I]=A[IDIV 2]+A[I-1].

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 44

У прилавка магазина выстроилась очередь из п покупателей. Время обслуживания i-го покупателя равно ti (i = 1, ..., п). Определить время Сi пребывания i-го покупателя в очереди.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 60

Даны действительное число х и массив A[n]. В массиве найти два члена, среднее арифметическое которых ближе всего к х.

Ответ

2.8 Двумерные массивы

Задача № 12

Дана квадратная матрица A[N, N]. Записать на место отрицательных элементов матрицы нули, а на место положительных -- единицы. Вывести на печать нижнюю треугольную матрицу в общепринятом виде.

Ответ

Задача № 28

Дана целочисленная квадратная матрица. Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 20

Вычислить сумму и число положительных элементов матрицы A[N, N], находящихся над главной диагональю.

Ответ

2.9 Символы и строки

Задача № 12

Даны два числа: N1 и N2, и две строки: S1 и S2. Получить из этих строк новую строку, объединив N1 первых символов строки S1 и N2 последних символов строки S2.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 28

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Задача № 20

Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Определить количество слов в строке.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Ответ

Список литературы

Вирт Н. Алгоритмы + структуры данных = программы. -- М.: Мир, 1985. -- С. 406.

Вирт Н., Йенсен К. Паскаль. Руководство для пользователя и описание языка. -- М.: Финансы и статистика, 1982. -- С. 151.

Грогоно П. Программирование на языке Паскаль. -- М.: Мир, 1982. -- С. 384.

Культин Н.Б. Delphi 6. Программирование на Object Pascal. -- СПб.: БХВ-Петербург, 2001. -- С. 528. -- ISBN 5-94157-112-7

Моргун А. Н. Программирование на языке Паскаль (Pascal). Основы обработки структур данных. -- М.: Диалектика, 2005. -- С. 576. -- ISBN 5-8459-0935-X

Перминов О. Н. Язык программирования Паскаль : Справочник. -- М.: Радио и связь, 1989. -- С. 128. -- ISBN 5-256-00311-9

Рубенкинг Н. Дж. Турбо Паскаль для Windows: в 2-х томах. Пер. с англ. -- М.: Мир, 1993.

http://borlpasc.narod.ru

http://ru.wikipedia.org

http://www.inr.ac.ru

Размещено на Allbest.ru


Подобные документы

  • История языка Pascal, его основные концепции. Линейный и циклический алгоритмы, типы данных. Условные операторы, операторы цикла. Программа вычисления суммы n первых членов геометрической прогрессии по любым двум ее членам, номера которых известны.

    отчет по практике [421,8 K], добавлен 07.06.2010

  • Алгоритмы, алфавит языка, структура программы, написанной на Турбо Паскале. Целые, вещественные, логические, символьные типы данных, их совместимость. Линейные алгоритмы, пустой и составной операторы, простейший ввод и вывод, разветвляющиеся алгоритмы.

    курсовая работа [49,8 K], добавлен 03.11.2009

  • Базовый синтаксис языка программирования С#. Объявление переменных и присваивание им значений. Управление порядком выполнения программы. Выполнение преобразований с помощью команд преобразования. Определение классов, конструктора, работа с файлами.

    курс лекций [692,5 K], добавлен 23.11.2009

  • Характеристика используемой операционной системы, языка программирования. Структура программы на языке Turbo Pascal 7.1. Операторы языка Turbo Pascal. Проведение сортировки записей. Алгоритмы программы и подпрограмм. Причины возникновения ошибок.

    курсовая работа [454,1 K], добавлен 13.06.2014

  • Значение и применение персонального компьютера и программного обеспечения в профессиональной деятельности. Перечень и содержание работы в системе программирования Pascal и Delphi. Условные операторы, массивы и строки. Общая схема работы с файлами.

    отчет по практике [642,2 K], добавлен 04.06.2013

  • Характеристика базовых конструкций языков программирования. Изучение истории их развития и классификации. Определение основных понятий языков программирования. Описание основных операторов, которые используются в языках программирования высокого уровня.

    курсовая работа [400,6 K], добавлен 10.11.2016

  • Строгая типизация и наличие средств структурного (процедурного) программирования императивного языка Pascal. Структура программы, выражения, строки. Правила и описание типов, процедур и функций, операторов ввода - вывода, модулей и подпрограмм.

    курсовая работа [37,3 K], добавлен 28.06.2008

  • Разработка программы, реализующей алгоритм обработки двухмерных и одномерных массивов. Область применения, требования к программным средствам. Язык программирования Turbo Pascal. Арифметические операции и выражения. Используемые модули и операторы.

    курсовая работа [439,3 K], добавлен 21.12.2015

  • Выполнение арифметических операций с помощью вспомогательных переменных, которые позволяют вычислить искомую переменную. Использование оператора цикла с предусловием и полной формы условного оператора. Примеры решения задач на работу с двумерным массивом.

    курсовая работа [518,8 K], добавлен 07.03.2014

  • Основные сведения о языке программирования Pascal. Листинг программы с комментариями. Диагональ элементов вектора и матрицы. Использование команд ввода-вывода информации. Быстродействие выполнения программы при компиляции. Отражение процессов вычисления.

    курсовая работа [1,9 M], добавлен 05.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.