А. В. Розина программирование на паскале методическое пособие

Вид материалаМетодическое пособие

Содержание


Примеры программ
Переменные и константы типа INTEGER
Примеры программ
Подобный материал:
1   2   3   4   5   6   7   8   9   10

Примеры программ


Задача 7

program time;

{За 60 минут часовая стрелка поворачивается на 30°, следовательно, за 1 минуту повернется на 0.5°. Поэтому ответ должен быть в переменной типа real. Вывод организован в формате R:p:q, т.е. в формате с фиксированной точкой}

var h , m : integer;

angle : real;

begin

writeln ( 'сколько часов ' ); readln ( h );

writeln ( ' сколько минут ' ); readln (m);

angle := 30 * h + m * 0.5;

writeln ( ' угол поворота ', angle :6 : 2 , ' градусов ' );

end;


Задача 9

program mil;

var k, m : real;

begin

writeln ( ' Введите расстояние в милях ' );

readln (m);

k := 8 / 5 * m;

writeln ( 'Расстояние в километрах = ' , к );

end.


Задача 10

program toplivo;

var a, b, c, d : real;

begin

writeln ( ' Введите, сколько тонн сжигают ежедневно ' );

readln (a);

writeln ( ' Введите расходы за полгода ' );

readln (b);

writeln ( ' Введите экономию топлива в день ' );

readln (с);

d := b - (a - c) * b / a;

writeln ( ' Экономия составит ' , d , ' рублей ');

end.


Задача 11 b)

program q11b;

var x, y : real;

begin

writeln ( ' Введите х ' );

y := abs (x + 4) – abs (sqr (x) – 3 * x + 6);

writeln('y= ' , y );

end.


Задача 11 c) Необходимо знать, что в Паскале вычисление yx производится по следующей формуле:

y x = e x ln (y)


program q11c;

var x, y : real;

begin

writeln ( ' Введите х ' );

y := exp ( sin (x) * ln (x));

writeln( ' y = ' , y );

end.


Задача 11 e)

program q11e;

var l, m, n, y : real;

begin

writeln ( ' l = ' ) ; readln (l);

writeln ( ' m = ' ) ; readln (m);

writeln ( ' n = ' ; readln (n);

y := 1.0 / (l + 1.0 / (m + 1.0 / n) );

writeln ( ' y= ' , y );

end.


Переменные и константы типа INTEGER




  1. Какие результаты выполнения выражений правильны:
    1. 24 div 12 = 2
    2. 11 div 5 = 1
    3. 10 div 3 = 3
    4. 17 div 2 = 1
    5. 20 mod 2 = 0
    6. 7 mod 3 = 2
  2. В видеоигре игрок выигрывает 50 очков, если он сбивает самолет, 100 очков, если ракету, 200 очков за спутник. Составьте программу, которая выводит на экран заработанное количество очков, если игрок сбил a самолетов, b ракет, c спутников.
  3. Ежедневно молочная ферма надаивает 1 850 литров молока. Составьте программу, которая по введенному номеру месяца выдаст количество молока за этот месяц.
  4. Мальчик, продающий на улице газеты, зарабатывает 1 рубль на продаже каждой из 75 газет. На каждой из остальных проданных газет он зарабатывает по 2 рубля. Напишите программу, которая выдает заработок мальчика, если он продал n газет (75 ≤ n < 150)
  5. В 2-значном числе поменять местами цифры.
  6. С клавиатуры вводится 3-значное число. Написать программу, вычисляющую, сколько в нем сотен, десятков и единиц.
  7. Написать программу вычисления суммы цифр 4-значного числа.
  8. Присвоить значение переменной h значение цифры, стоящей в разряде сотен в записи числа z (например, если z =28796, то h = 7)
  9. Поменять местами значения целых переменных x и y. Используя дополнительную переменную и не используя дополнительных переменных.



Примеры программ



Задача 3.

program milk;

{Т.к. самый длинный месяц имеет 31 день, то 1850 * 31 = 57350 л. Диапазон для переменных типа integer - 32768 ... 32767. Следовательно, m - количество надоенного молока за месяц - надо описывать как word. Ее диапазон - 0 ... 65535}

const l = 1850;

var m : word;

mounth : integer;

begin

writeln ( ' введите количество дней в месяце ' );

read ( mounth );

m := l * mounth;

writeln ( ' надоили ' , mounth , ' л молока ' );

end.

Задача 4.

program boy;

const m75 = 1;

m76 = 2;

g = 75;

var n , s : integer;

begin

writeln ( ' сколько газет продано ' ); readln ( n );

s := m75 * ( n div g ) + m76 * ( n mod g );

writeln ( ' заработок мальчика ' , s , ' руб. ' );

end;

Задача 5.

program chislo;

{a – число; d – число десятков; e – число единиц; }

var a , d , e : integer;

begin

writeln ( ' Введите двузначное число ' ); readln ( a );

d := a div 10; e := a mod 10;

a := e * 10 + d;

writeln ( ' новое число = ' , a );

end.

Задача 6.

program chislo;

{ a – число; s – число сотен; d – число десятков; e – число единиц; }

begin

writeln ( ' Введите трехзначное число ' ); readln ( a );

s := a div 100; e := a mod 10; d := a mod 100 – e;

writeln ( ' в числе сотен ', s , ' десятков ', d , ' единиц ', e );

end.


Задача 9.

program change;

{Если менять местами значения переменных A и B через дополнительную переменную С, по алгоритм обмена будет следующий: А переслать в С; В переслать в А; С переслать в В.

Если обойтись без третьей переменной, то алгоритм следующий: }

var a , b : integer;

begin

writeln ( ' задайте а ' ); readln ( a );

writeln ( ' задайте b ' ); readln ( b );

c := a; a := b; b := c;

writeln ( ' a = ' , a, ' b = ' , b );

end.