Примеры решения задач. Два человека одновременно делают вклад на одинаковую сумму

Задача 1

Два человека одновременно делают вклад на одинаковую сумму. Первый под 10% годовых, а второй под 7%. Определить, когда у первого денег на счете будет в 2 раза больше, чем у второго.

Итак, нам необходимы две переменных для хранения суммы сбережений.

S 1 - сумма вклада 1 -го человека,

S2 - сумма вклада 2-го человека.

Пока количество прошедших лет равно 0 ( L:=0;), суммы вкладов одинаковые, допус­тим по 1000 рублей.

Но через год (L:=L+1;) у одного сумма вырастет на 10% 1.S1-S1+SP0.1 {10/100},

а у второго только на 7%

2. S2:=S2+S2*0.07 {7/100}

3.L-L+1;

и через некоторое время у 1-го сумма вклада становится в 2 раза больше, чем у 2-го ( S1->S2*2;). (Подумайте, почему нельзя записать S1^2*S2 ?!).


Итак, действия 1,2,3 являются операторами, требующими многократного выполнения:

до тех пор ПОКА S1>=2*S2;

Программа выглядит следующим образом:

Const

N=1000; { интересно, важна сумма вклада или нет? } Var

Sl,S2:Real;

L:Word;

Begin S1:=N;

S2:=N;

L:=0;

Repeat

Sl-Sl+SPO.l;

S2:=S2+S2*0.07;

L-L+l;

Until S1>=2*S2;

WriteLn(' Пройдет ',L,' лет');

ReadLn;

End.

Задача 2

Вкладчик банка положил на свой банковский счет сумму 1000 рублей, через сколько лет его сумма возрастет в 100 раз, если известен годовой процент ? Сумма через год = Сумма + Сумма * год. процент /100;

пока Сумма не станет больше 100.000;

Var

S,P:Real;

L: Integer;

Begin

WriteLn(' Введите годовой процент');

ReadLn(P);

S:=1000;

L:=0;

Repeat S-S+S^P/lOO;

L:=L+1;

Until S> 100000;

WriteLn(' Сумма возрастет в 100 раз через ' ,L,' лет');

ReadLn;

End.

Задачей

(Для решения задачи нужны дополнительные знания: символьный тип данных). Реализовать движение курсора по экрану с помощью клавиш управления курсором {LEFT} и {RIGHT}.

Для решения этой задачи необходимо знать коды пяти клавиш.


#27 {ESC}

#72 {UP}

#80 {DOWN}

#75 {LEFT}

#77{RIGHT}

Мы управляем курсором, пока не нажата клавиша {ESC}.

Repeat

Until С=#27;

Движение курсора влево Write(#8);

Движение курсора вправо Write('');

Функция считывания кода клавиши ReadKey;{ Модуль Crt}

Uses Crt;

Const

Left = #75;

Right = #77;

Esc = #27;

Var. C:Char;

Begin

Repeat

C^ReadKey;

IfC=RightThenWrite(");

IfC= Left Then Write(#8);

Until С = Esc;

End.

Задача 4

Подсчитать сумму цифр заданного числа. Выделение из числа каждого разряда происходит по следующему принципу:

d:=a mod 10; { выделяем последний разряд }

а:=а div 10; { убираем разряд из числа }

Это мы будем делать ПОКА ао0. Выход а=0;

Окончательный вариант программы:

Var

A:LongInt;

S:Byte;

D:Byte;

Begin

WriteLn(' Введите число');

ReadLn(A);

S:=0;

Repeat

D:=Amod 10;

A:=Adiv 10;

S := S + D;

Until a=0;

WriteLn(' Сумма цифр числа', A ,' равна ',S);

ReadLn;

End.


Упражнение 15.

1. Что получим в результате выполнения цикла, сколько раз он выполнится ? S:=0;

Repeat

S:=S+I;

I:=l+2;

UntiH>10;

WriteLn(S);

P:=l;

I:=l;

Repeat

P:=P*1;

I:=l+3;

Until K10;

WriteLn(P);

A-.=l;

B-2;

Repeat

Begin

A:=A-1;

B:=B+1;

Until A + 2*B < 0;

WriteLn(A; ',B);____________________________________________

Массивы как способ организации данных








Дата добавления: 2015-12-11; просмотров: 797;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.