М. Кривцов - Конец холивара. Pascal vs C

Тут можно читать онлайн М. Кривцов - Конец холивара. Pascal vs C - бесплатно ознакомительный отрывок. Жанр: comp-programming, издательство Литагент «Ридеро»78ecf724-fc53-11e3-871d-0025905a0812. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Конец холивара. Pascal vs C
  • Автор:
  • Жанр:
  • Издательство:
    Литагент «Ридеро»78ecf724-fc53-11e3-871d-0025905a0812
  • Год:
    неизвестен
  • ISBN:
    978-5-4474-1031-5
  • Рейтинг:
    4.5/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

М. Кривцов - Конец холивара. Pascal vs C краткое содержание

Конец холивара. Pascal vs C - описание и краткое содержание, автор М. Кривцов, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Данное пособие является введением в основы программирования на двух языках. Сначала рассматриваются простые примеры на Pascal с описанием алгоритмов на русском языке и использованием графических блок-схем, затем эти же примеры приводятся в программах на C.

Конец холивара. Pascal vs C - читать онлайн бесплатно ознакомительный отрывок

Конец холивара. Pascal vs C - читать книгу онлайн бесплатно (ознакомительный отрывок), автор М. Кривцов
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

F:=1;

Для K:=1 до N делать

F:=F*K;

Писать (‘n!=’, F);

F :=1;

FOR K:=1 TO N DO

F:=F*K;

WRITELN (‘n!=’, F);

FOR – для

TO – до

DO – делать

Цикл с параметром Если в этом операторе вместо TO использовать DOWNTO то при - фото 6

Цикл с параметром

Если в этом операторе вместо TO использовать DOWNTO, то при каждой итерации значение параметра K будет уменьшаться на единицу.

3. Процедуры и функции (подпрограммы)

Подпрограммы позволяют разбить одну сложную программу на несколько более простых и решать эти отдельные задачи самостоятельно, возможно даже, что делать это будут разные программисты и в разное время. Готовую подпрограмму, в дальнейшем, можно использовать в других программах.

Функции и процедуры описываются после описания переменных.

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

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

Среди входящих в тело функции операторов должен быть хотя бы один оператор присваивания, в левой части которого стоит имя функции.

Процедуры или функции могут не иметь параметров или иметь параметры-переменныеили параметры-значения. При помощи параметров производится передача данных в процедуру или функцию. Параметры, в которые записываются результаты работы процедуры и которые будут использоваться в программе должны описываться как параметры-переменные(перед ними должно стоять слово VAR), а параметры, которые будут передавать в процедуру или функцию исходные данные должны описываться как параметры-значения. Параметры при объявлении процедуры ( формальные параметры) и при вызове процедуры ( фактические параметры) должны соответствовать друг другу по типу данных.

Структура процедуры или функции имеет только два различия от структуры обычной программы: процедуры и функции начинаются с заголовка PROCEDURE или FUNCTION, а не с заголовка PROGRAM, и заканчиваются не точкой, а точкой с запятой.

Процедуры и функции могут иметь свои собственные константы, типы данных, переменные и даже собственные процедуры и функции. Но все эти элементы, которые называются локальными, могут использоваться только в тех процедурах и функциях, в которых они определены. Константы, типы и переменные объявленные в программе имеющей процедуру или функцию называются глобальными. Они могут быть доступны, то есть предоставлять или изменять свои значения внутри тел процедур или функций, объявленных в этой программе. Локальные элементы позволяют работать над подпрограммами разным программистам, не боясь, что, например, они могут дать имена переменным аналогичные именам переменных в других подпрограммах или в основной программе – это не повлияет на работу других подпрограмм, или основной программы.

На этом, в том числе, базируется структурное программирование. По данной методологии любая программа строится без использования оператора безусловного перехода (goto) из трёх базовых управляющих структур: последовательность, ветвление и цикл. Кроме того, используются подпрограммы. Притом, разработка программы ведётся пошагово, методом “сверху вниз”. Методология структурного программирования появилась, как следствие возрастания сложности решаемых на компьютерах задач и усложнения программ.

3.1. Функции

Пример 1.7: Функция вычисляющая факториал.

VAR A, Y : INTEGER;

FUNCTION FAKTORIAL (N : INTEGER) : INTEGER;

VAR F, K : INTEGER;

BEGIN

F := 1;

FOR K := 1 TO N DO

F := F * K;

FAKTORIAL := F

END;

BEGIN

WRITELN (‘ВВЕДИТЕ ЦЕЛОЕ ПОЛОЖИТЕЛЬНОЕ ЧИСЛО’);

READLN (A);

Y := FAKTORIAL (A);

WRITELN (‘N!=’, Y);

READLN;

READLN

END.

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

3.2. Процедуры

Пример 1.8: Процедура вычисляет корни квадратного уравнения

AX 2+BX+C=0

PROGRAM KU (INPUT, OUTPUT);

VAR A, B, C, D, X1, X2 : REAL;

PROCEDURE KVUR (A, B, C: REAL; VAR D, X1, X2: REAL);

BEGIN

D:=SQR (B) -4*A*C;

IF D = 0 THEN X1:= (-B) / (2*A)

ELSE

IF D> 0 THEN

BEGIN

X1:= ((-B) – SQRT (D)) / (2*A);

X2:= ((-B) + SQRT (D)) / (2*A)

END

END;

BEGIN

WRITE (‘Введите A=’);

READLN (A);

WRITE (‘Введите B=’);

READLN (B);

WRITE (‘Введите C=’);

READLN (C);

KVUR (A, B, C, D, X1, X2);

IF D <0 THEN WRITELN (‘Действительных корней нет’)

ELSE

IF D = 0 THEN WRITELN (‘X=’, X1)

ELSE

BEGIN

WRITELN (‘X1=’, X1);

WRITELN (‘X2=’, X2)

END;

READLN;

READLN

END.

Где SQR – квадрат числа, а SQRT – корень квадратный.

4. Массивы и индексированные переменные

Массив – это упорядоченный набор переменных одинакового типа. Доступ к элементу массива производится по его номеру (индексу). Массивы удобно использовать для хранения однородной по составу информации, например, элементов таблиц, коэффициентов уравнений, матриц. Частным случаем массива символов является строка (переменная типа STRING).

Типичные действия с массивами: ввод и вывод массивов, поиск в массиве заданного элемента, поиск максимального или минимального элемента, сортировка.

Массивы бывают одномерные (например: VAR A : ARRAY [1..100] OF INTEGER;) и двумерные (например: VAR B : ARRAY [1..10, 1..10] OF INTEGER;). Двумерный массив – это таблица.

ARRAY (массив), OF (из) – ключевые слова.

Доступ к элементам массива удобно производить с помощью циклов с параметрами. Для двумерных массивов нужны вложенные циклы.

Пример 1.9: Программа генерирует таблицу умножения и оформляет вывод результатов в матрицу 10 на 10 используя двумерный массив.

VAR A : ARRAY [1..9, 1..9] OF INTEGER;

I, K : INTEGER;

BEGIN

FOR I := 1 TO 9 DO

FOR K := 1 TO 9 DO

A [I, K] := I * K;

FOR I := 1 TO 9 DO

BEGIN

FOR K := 1 TO 9 DO

WRITE (I, '*’, K, '=’, A [I, K],’’);

WRITELN

END;

READLN;

READLN

END.

5. Заглянем в вычислительную математику

Метод половинного деления

Один из методов численного решения уравнений с одним неизвестным. Пусть имеется уравнение Y (x) =0 с непрерывной на отрезке [а, b] функцией Y (х), принимающей на концах отрезка значения разных знаков и имеющей внутри [а, b] единственный корень X. Для приближенного нахождения X отрезок [а, b] делят пополам и вычисляют значение Y (x 1) в средней точке x 1= (a+b) /2. Если Y (x 1) не равна нулю, то из двух отрезков [а, х 1] и [х 1,b] для последующего деления пополам выбирается тот, на концах которого значения функции различны по знаку. Возникающая в процессе такого дробления последовательность середин отрезков х 1, х 2, x 3, … сходится к корню X. Вычисление прекращается, когда длинна отрезка становится меньше заданной погрешности вычисления.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


М. Кривцов читать все книги автора по порядку

М. Кривцов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Конец холивара. Pascal vs C отзывы


Отзывы читателей о книге Конец холивара. Pascal vs C, автор: М. Кривцов. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x