Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

ЗАНЯТТЯ 20. Цикли з передумовою




End.

Begin

Else

End

Begin

Begin

End.

Begin

End.

Begin

End.

Begin

End.

Begin

ЗАНЯТТЯ 19. Цикли з параметром

End.

Begin

Begin

Clrscr;

Write(‘Введіть число: ‘);

Readln(N);

Counter:= 0;

While N > 0 do

Counter:=Counter+1; {Підрахунок кількості цифр}

N:=N div 10; {Відкидання останньої, цифри}

End;

Writeln(«Кількість цифр у заданому числі дорівнює’, N);

Readkey;

Домашнє завдання:

• Прочитати сторінки 83 — 89 із запропонованого підручника;

• Вивчити означення, що прочитані на лекції.


Мета заняття: навчити використовувати цикл з параметром для розв’язування типових задач.

На початку заняття рекомендується провести письмове опитування по матеріалах попереднього заняття. Далі можна розглянути деякі типові задачі з використанням циклу з параметром. Нагадуємо, що в усіх цих задачах кількість повторень буде відома заздалегідь.

ЗАДАЧА №183

Умова задачі: Компанія бабусь поїхала на мотоциклах на курси комп’ютерної грамотності. Попереду на мотоциклі без глушника їхала одна бабуся, за нею - дві, потім - три і т.д. Скільки бабусь їхало на заняття, якщо приголомшені пішоходи всього нарахували N рядів? Чи змогли бабусі зайняти всі місця у класі, якщо там стояло k рядів по / комп’ютерів у кожному? Скільки вільних місць залишилося?

Розв’язання: Зверніть увагу на те, що фактично ця задача зводиться до знаходження суми всіх натуральних чисел від 1 до N. У кінці задачі для повторення команди розгалуження учням пропонується визначити кількість зайнятих бабусями та вільних місць. Програма розв’язання даної задачі має такий вигляд:

Program Example_183;

Uses crt;

Var I,N,Sum:word;{I - параметр циклу, N - кількість рядів мотоциклів. Sum - кількість бабусь, що приїхали на курси} Place,k,l:word;{k - кількість рядів у комп’ютерному класі, 1 - кількість комп’ютерів у кожному ряду, Place - кількість місць, якої вистачило для бабусь}

Clrscr;

Sum:=0;

Write(‘Введіть кількість рядів мотоциклів: ‘);

Readln(N);

For I:=1 to N do Sum:=Sum+I;

Writeln(‘Кількість бабусь, що приїхали на курси ‘,Sum);

Writeln(‘Кількість комп’ютерів на курсах ‘,к*1);

If Sum<k*l

Then writeln(‘Бабусі не змогли зайняти всі місця.’)

Else writeln(‘Бабусі зайняли всі місця.’);

Place:=Sum - к*1;

If Place>0

Then writeln(‘Бабусям не вистачило ‘,Place,’ місць.’);

Readkey;

ЗАДАЧА № 189

Умова: Знайти значення

(1 + 0.1)(2 + 0.2)...(9 + 0.9)

Розв’язання: У даному випадку кількість повторів буде дорівнювати 9, тобто програма буде мати вигляд:

Program Example_189_2;

Uses crt; Var I:word; {I - параметр циклу}

Rez:real; {Rez - результат обчислень}

Clrscr;

Rez:=1; {Початкове значення дорівнює 1, тому що результат є накопиченням добутку}

For I:=1 to 9 do Rez:=Rez*(I+0.1*I);

Writeln(‘Rez= ‘,Rez:8:2);

Readkey;

ЗАДАЧА № 190

Умова задачі: Дано ціле п. Визначити п!

Розв’язання: Відомо, що n! (вимовляється як n-факторіал) - це добуток всіх натуральних чисел від 1 до п. Тому програма має вигляд:

Program Example_190_1;

Uses crt;

Var I,n:word; {I - параметр циклу}

Factorial:longint; {Factorial - результат обчислень}

Clrscr;

Factorial:=1;

Write(‘Введіть значення n: ‘);

Readln(n);

For I:=1 to n do Factorial:=Factorial*I;

Writeln(‘Factorial= ‘, Factorial:8:2); Readkey;

ЗАДАЧА № 191

Умова задачі: За данимнатуральним значенням змінної п обчислити:

n – разів

 

Розв’язання: Для розв’язання цієї задачі необхідно виконати обчислення, починаючи з самого вкладеного кореня. Кожний наступний крок обчислюється таким чином: до попереднього результату додається двійка і з отриманої суми береться квадратний корінь.

Програма, що виконує описані обчислення, наведена нижче:

Program Example_191_6;

Uses crt;

Var I,n:word;{I - параметр циклу}

Rez:real;{Rez - результат обчислень}

Clrscr;

Rez:=0; {Початкове значення дорівнює 0,току що результат є накопиченням суми}

Write(‘Введіть значення n: ‘);

Readln(n);

For I:=1 to n do

Begin Rez:=sqrt(Rez+2);

End;

Writeln(‘Rez= ‘,Rez:8:2);

Readkey;

ЗАДАЧА №210

Умова: Дано ціле число п, яке набуває значень шкільних оцінок. Визначити відповідною кількістю звукових сигналів, яка саме оцінка була задана («1» - один звуковий сигнал, «2» - два сигнали і т.д.). Якщо ж задане число не відповідає значенню шкільної оцінки—подати довгий звуковий сигнал.

Розв ‘язання: Звуковий сигнал у цій програмі можна подавати за допомогою процедур керування вбудованим динаміком sound та nosound. Перша з них викликає звучання ноти заданої частоти (частота вказується в дужках після процедури), а друга виключає динамік. Тривалість звучання та паузи між звуками можна задавати процедурою delay, параметром якої є змінна time (значення цієї змінної можна задати командою присвоєння або введенням із клавіатури). Отже, програма має вигляд:

Program Example_210;

Uses crt;

Var I,n:word; {I - параметр циклу, n - оцінка учня}

Time:word;

Clrscr;

Write(‘Введіть Вашу оцінку: ‘);

Readln(n);

Time:=10000;

{Значення цієї змінної залежить від характеристик комп’ютера, і може бути підібрана практичним шляхом}

If (n<1) or (n>12) Then

writeln(‘Ви помилились, такої оцінки не існує.’);

sound(200); delay (time 5); nousound;

For I:=1 to n do

Sound(200); Delay(time);

Nousound; Delay(time);

End;

Readkey;

Домашнє завдання:

• Повторити теоретичний матеріал по роботі циклу з параметром;

• виконати задачі № 189 (4), № 190 (3), №191, № 211, № 178, № 188.


Мета заняття: Навчити використовувати цикл з передумовою для розв’язування типових задач.

На початку заняття рекомендується провести письмове опитування (можна у вигляді диктанту) по матеріалах попереднього заняття. Далі можна розглянути деякі типові задачі з використанням циклу з передумовою. Нагадуємо, що в усіх цих задачах кількість повторень буде визначатись залежно від початкових та кінцевих умов.

ЗАДАЧА № 180

Умова: Коли Василині Премудрій виповнилося 18 років, Чахлик Невмирущий вирішив одружитися з нею. Василина запитала Чахлика, скільки у нього скринь із золотом. Чахлик відповів, що зараз у нього я скринь і щороку додається ще по т скринь. Василина пообіцяла, що вийде заміж тоді, коли у Чахлика буде k повних скринь із золотом. Скільки років буде тоді нареченій?

Program Example_180;

Uses crt;

Var m,n,k:word;

{n - початкова кількість скринь із золотом, m - щорічний «прибуток» Чахлика, k - «потреби» Василини Премудрої}

Sum,Years:word; {Sum - щорічне накопичення Чахлика, Years -вік Василини Премудрої}




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


Дата добавления: 2014-10-22; Просмотров: 679; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.022 сек.