» » » » Занимательный Паскаль 7 - nikf1980 Филиппов

Занимательный Паскаль 7 - nikf1980 Филиппов

На нашем литературном портале можно бесплатно читать книгу Занимательный Паскаль 7 - nikf1980 Филиппов, nikf1980 Филиппов . Жанр: Детская образовательная литература. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале bookplaneta.ru.
Занимательный Паскаль 7 - nikf1980 Филиппов
Название: Занимательный Паскаль 7
Дата добавления: 27 апрель 2024
Количество просмотров: 682
Читать онлайн

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала

Занимательный Паскаль 7 читать книгу онлайн

Занимательный Паскаль 7 - читать бесплатно онлайн , автор nikf1980 Филиппов

Занимательный Паскаль 7ИсторияЯзык программирования Pascal был создан в 1970 году на основе языка Алгол-60.Pascal создавался Никлаусом Виртом в 1968–1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал одну из первых в мире механических машин, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом; представляя язык, автор в качестве цели его создания указывал построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные.

Перейти на страницу:
отметить, что то, что делает оператор в операции, зависит не только от него, но и от типов данных, которыми он оперирует. Например молоток в случае нападения на нас крокодила — перестает играть роль строительного инструмента, а превращается в оружие… Однако в большинстве случаев операторы не универсальны — например знак плюса неприменим, если операндами являются с одной стороны число, а с другой стороны строка.

Тогда: возникает исключение TypeError: unsupported operand type(s) for +: int and str Паскаль сообщит что произошла недопустимая операция склеивания разных типов данных.

Числовые переменные

Самым простым и важным видом переменных являются числовые переменные. Они допускают хорошее наглядное представление, которым пользуются все профессиональные программисты: числовая переменная — это “коробочка”, в которую можно положить на хранение какое-либо число.

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

на русском языке

на английском языке

запросить значение переменной Х с клавиатуры

x =Readln(“x=”);

вычислить значение Х

x=function();

напечатать значение Х

Writeln(x)

если значение переменной Х удовлетворяет условию, то…

if (x<=0) do:

begin

end;

При вычислении значений переменных будем использовать следующие обозначения: сложение =a+b; вычитание — , умножение *, деление /, целочисленное деление //, возведение в степень **, извлечение квадратного корня sqrt(х), синус sin(x), косинус cos(x), целая часть числа int(x), абсолютная часть числа abs(x), случайные числа — библиотека random.

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

Каждый программист

Работа программы во многом определяется ходом изменения значений её переменных.

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

В качестве тренировки разберем следующую задачу:

Какое значение будет иметь переменная х после 5го цикла выполнения программы?

Проверьте правильность своих рассуждений, запустив программу на выполнение…

Program 1;

var int: x,y,z,i;

begin

x=1;

y=1;

z=1;

i=0;

while (i<5) do:

begin

x=x*y*z+1;

y=x*y*z+1;

z=x*y*z+1;

i=i+1;

Writeln(x,y,z);

end;

Readln();

End.

Обратите внимание в этой программе вместо сложения умножение и результат растет уже в геометрической прогрессии. И тогда в качестве начальных значений переменных нужно брать единицы 1, так как если оставить 0 то 0*1*2*3*…* = 0 в любом случае…

Доктор Шибкин

Доктор Шибкин был человеком чрезвычайно рассеянным и частенько допускал оплошности. Но как ни странно, именно это приводило его порой к самым разным маленьким открытиям.

Так, читая предыдущий пункт книги, он проскочил глазами само задание и подумал, что нужно найти решение системы уравнений:

X=Х+Y+Z+1,

Y=X+Y+Z+1,

Z=X+Y+Z+1

что он и сделал мгновенно в уме: из одинаковости правых частей очевидно, что X=Y=Z, откуда: X=Y=Z=-½.

Когда же он собрался сверить ответ, то понял, что в задании речь идёт не о системе уравнений, а о программе для компьютера. Выполнив задание правильно, профессор с изумлением заметил: “Между двумя решениями нет ничего общего!”. С тех пор доктор Шибкин проникся идеей, что смысл математических и программных обозначений, при всей их схожести, — совершенно различный.

Таблица квадратов

Задача:

Составить программу, — печатающую таблицу квадратов целых чисел.

Решение:

Если значение переменной N будет пробегать натуральный ряд 1, 2, 3, …, N то переменная X=N*N даст квадрат N. Печатая значение N и X и зациклив программу, имеем:

Program 2;

var int: N=1;

begin

while (N<21) do:

begin

X=N*N;

Writeln(N, X);

N=N+1;

end;

Writeln(“End”);

Readln();

end.

Степени числа 2

Задача:

Аналогично таблице квадратов можно составить программу, печатающую числа 2**n: N=N+1; X=2**N. Однако это можно сделать проще, если заметить что степень числа 2 — представляет собой произведение двоек столько раз, каков показатель степени.

Решение:

Если значение переменной N будет пробегать ряд чисел от 1 до 21, то переменная X=1 в первом шаге, и затем X=X*2 в последующих шагах программы даст нам значение степени числа 2. Печатая значение N и X имеем:

Program 3;

var int: N=1;

var int: X=1;

begin

while (N<21) do:

begin

X=X*2;

Writeln(N, X);

N=N+1;

end;

Writeln(“End”);

Readln();

end.

Такой способ вычислений очень рационален. Чтобы лучше это понять, вычислим первые шесть значений 2^n вручную:

2*1=2

2*2=4

4*2=8

8*2=16

16*2=32

32*2=64

Т.е. вместо того, чтобы каждый раз перемножать n двоек, лучше один раз умножить на 2 предыдущее значение: 2^n=2*2^(n-1).

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

Для себя его можно переформулировать в виде правила рекурсии: чтобы двигаться вперёд — смотри назад!

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

Типы данных. Переменные

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

Перейти на страницу:
Комментариев (0)