Файл: Сборник-задач-на-Языке-Turbo-Pascal.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.12.2024

Просмотров: 754

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Институт повышения квалификации и переподготовки работников образования

Курганской области

Е. Г. Квашнин

Turbo Pascal – сборник задач c решениями

Учебно – методическое пособие

для учителей информатики

Курган 2004

Turbo Pascal – сборник задач c решениями: Сопровождение курса лекций / Авт.- сост. Е. Г. Квашнин; Институт повышения квалификации и переподготовки работников образования Курганской области. – Курган, 2004. – 37 стр.

Автор составитель: Е. Г. Квашнин

доцент кафедры ЕМО

ИПК и ПРО Курганской области

Данное учебное пособие содержит краткие справочные данные и задачи с решениями по курсу «Основы языка программирования». Изложение ведется с использованием языка программирования Турбо Паскаль. Рассматриваются некоторые классические алгоритмы. Приводятся примеры типовых задач с решениями.

Пособие предназначено для учителей информатики и слушателей данного курса.

Оглавление

  1. Предопределенные типы языка Паскаль.

Стр.

4

  1. Операторы ввода и вывода и присваивания информации.

5

  1. Условный оператор.

9

  1. Оператор выбора.

15

  1. Циклы.

17

  1. Массивы.

24

  1. Процедуры.

37

  1. Функции.

43

  1. Графика.

49

  1. Символы (строки).

54

  1. Список использованных источников

63

Предопределенные типы языка Паскаль

Группа

Подгруппа

Название

Идентификатор

Простой

Поряд­ковый

Короткий целый

Shortint

-128…127

Байтовый

Byte

0…255

Слово

Word

0…65535

Целый

Integer

-32768…

32767

Длинный целый

Longint

-2147483648…

2147483647

Символьный

Char

Символы из расширенного набора символов кодаASCII

Логический

Boolean

False, True

Вещест­венный

Вещественный

Real

-1,7х1038… -2,9х10-39,

2,9х10-39… 1,7х1038

С одинарной точностью

Single

-3,4х1038… -1,5х10-45

1,5х10-45

3,4х1038

С двойной точностью

Double

-1,7х10308

-5х10-324,

5х10-324

1,7х10308

С повышенной точностью

Extended

-1,1х104932

-1,9х10-4951,

1,9х10-4951

1,1х104932

Сложный

Comp

-263+1…263-1

Строковый

String

Структурный

Массив

Array

Множество

Set

Файл

File

Запись

Record

Ссылочный

Pointer

Процедурный

Процедура

Procedure

Функция

Function

Объектный

Object


Операторы ввода, вывода и присваивания информации

Оператор

Запись на языке Паскаль

Пример выполнения программы

Выводинформации

write(‘а’);

а

writeln(‘а’);

а

а:=5;

writeln(а);

5

а:=5;

writeln(‘а= ’, а, ‘м’);

а= 5м

Вводинформации

read(а);

Ввод значения одной переменной. Выполнение программы приостанавливается до введения значения. После выполнения оператора read курсор остаётся в этой же строке

readln(а);

Ввод значения одной переменной. Выполнение программы приостанавливается до введения значения. После выполнения оператора readln курсор переходит в следующую строку

readln(а, b);

Ввод значения двух переменных.

Оператор присваивания

Переменная := выражение

а:= 2+7;

в результате получим значение а=9

с:= а – 4;

с становится равным 5

с:= с+3;

значение сувеличивается на 3 и становится равным 8

с+1:= 2-а

неверно, так как слева от знака присваивания стоит не переменная, а выражение!

Программа, выводящая на экран слово «МИР». Буквы этого слова состоят из символов «*», высота каждой буквы – 6 символов.

Program mir;

Uses Crt;

Begin

Clrscr;

writeln(‘* * * * *******’);

writeln(‘* * * * * ** * *’);

writeln(‘* ** * * * * * *’);

writeln(‘* * * * * * *******’);

writeln(‘* * * * * * ’);

writeln(‘* * * * * ’);


readln;

End.

Программа, вычисляющая произведение трёх чисел.

Program umnogenie;

Uses Crt;

var a, b, c: real;

Begin

Clrscr;

writeln(‘Введите первое число ’);

readln(а);

writeln(‘Введите второе число ’);

readln(b);

writeln(‘Введите третье число ’);

readln(с);

writeln(‘Произведение чисел равно ’, a*b*c );

readln;

End.

Определение среднего арифметического двух чисел.

Program sredznach;

Uses Crt;

var a, b: real;

Begin

Clrscr;

writeln(‘Введите первое число ’);

readln(а);

writeln(‘Введите второе число ’);

readln(b);

writeln(‘Среднее значение чисел равно ’, (a+b)/2 );

readln;

End.

Вычисление третьего угла треугольника по двум известным углам.

Program treugolnik;

Uses Crt;

var a, b: real;

Begin

Clrscr;

writeln(‘Введите первый угол ’);

readln(а);

writeln(‘Введите второй угол ’);

readln(b);

writeln(‘Третий угол равен ’, 180-a-b );

readln;

End.

Вычисление значения арифметического выражения .

Program Uravnenie;

Uses Crt;

var x, y: real;

Begin

Clrscr;

write(‘Введите значение переменной х ’);

readln(x);

write(‘Введите значение переменной y ’);

readln(y);

writeln(‘Значение арифметического выражения равно’, exp(x*ln(y)):5:3);

readln;

End.

Вычисление значения арифметического выражения

Program Uravnenie;

Uses Crt;

var x, b: real;

Begin

Clrscr;

write(‘Введите значение переменной х ’);

readln(x);

b:= (exp(x*ln(5))+exp(5*ln(х)))/(5+х);

writeln(‘Значение арифметического выражения равно’, b:5:3);

readln;

End.

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

ProgramNaoborot;

UsesCrt;

varx, a, b, c: integer;

Begin

Clrscr;


write(‘Введите трёхзначное число ’);

readln(x);

a:= x mod 10;

b:= x div 10 mod 10;

c:= x div 100;

writeln(‘Число наоборот’, 100*а+10*b+а);

readln;

End.

Вычисление площади треугольника по двум сторонам и углу между ними.

Programst;

UsesCrt;

vara, b, c, s: real;

Begin

Clrscr;

writeln(‘Введите длину первой стороны ’);

readln(а);

writeln(‘Введите длину второй стороны ’);

readln(b);

writeln(‘Введите угол между ними ’);

readln(с);

s:=0.5*a*b*sin(c);

writeln(‘Площадь треугольника равна ’,s);

readln;

End.

Вычисление площади треугольника по 3 вершинам.

Programst;

UsesCrt;

var x1,y1,x2,y2,x3,y3,a,b,c,p,s:real;

Begin

Clrscr;

writeln('введите A(X1,Y1), B(X2,Y2) и C(X3,Y3)');

readln( x1,y1,x2,y2,x3,y3 );

c:=sqrt(sqr(y1-y2)+sqr(x1-x2));

a:=sqrt(sqr(y2-y3)+sqr(x2-x3));

b:=sqrt(sqr(y1-y3)+sqr(x1-x3));

p:=(a+b+c)/2;

s:=p*sqrt((p-a)*(p-b)*(p-c));

writeln('площадь треугольника = ',s);

readln;

End.

Вычисление суммы целых частей двух введённых с клавиатуры действительных чисел.

Programsumma;

UsesCrt;

vara, b, c: real;

Begin

Clrscr;

writeln(‘Введите первое число ’);

readln(а);

writeln(‘Введите второе число ’);

readln(b);

с:= trunc(a)+ trunc(b);

writeln(‘Произведение чисел равно ’,c);

readln;

End.

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

Programokrugl;

UsesCrt;

vara, b, c: real;

Begin

Clrscr;

writeln(‘Введите действительное число ’);

readln(а);

writeln(‘Введите степень ’);

readln(b);

с:=round(a);

d:=exp(b*ln(c));

writeln(‘Округление числа ’,a, ‘=’c);

writeln(‘числа ’, с,’ в степени ’, ’b’, ‘=’,d);

readln;

End.

Вычисление длины отрезка, зная координаты A и B.

Programsize;

UsesCrt;

var x1,y1,x2,y2,d:real;

Begin

Clrscr;

writeln('введите A(X1,Y1) и B(X2,Y2)');

readln( x1,y1,x2,y2 );

d:=sqrt(sqr(y2-y1)+sqr(x2-x1));