Відмінності між версіями «Wikiстаття учащегося за темою "Програмування"»

Матеріал з Iteach WIKI
Перейти до: Навігація, пошук
(Тема дослідження)
Рядок 7: Рядок 7:
  
 
==Тема дослідження==
 
==Тема дослідження==
 +
Програмування у житті сучасної людини
  
 
== Проблемный вопрос (вопрос для исследования)==
 
== Проблемный вопрос (вопрос для исследования)==

Версія за 12:42, 6 липня 2011

Смайлик 2.gif
Ця стаття не має категорії
Ви можете долучитися до виправлення статті визначивши для неї категорію та додавши її до статті

Назва проекту

Автори проекту

Тема дослідження

Програмування у житті сучасної людини

Проблемный вопрос (вопрос для исследования)

Гипотеза исследования

Цели исследования

Результаты исследования

Вывод

Полезные ресурсы

Другие документы

Вступ

Вивчаючи курс з інформатики за 9 клас ми підійшли до написання творчої роботи у якій ми досліджували: розв’язування задач програмною мовою Turbo Pascal та пошук альтернативних рішень використовуючи базові знання. На наступних етапах нашої роботи ви побачите конкретні приклади розв’язування задач різними методами яких ми навчилися та спробуємо проаналізувати який з них найефективніший.

І. Умова задачі

Щоб бути завжди чистою, людині необхідно х(24≤х≤50) шматків мила на рік. Якщо мити лише п’яти, то мила знадобиться у 12 разів менше, а якщо мити лише вуха – ще на один шматок менше. Скласти програму, яка за вибором користувача давала б відповідь, яку кількість шматків мила необхідно закупити на n років уперед, щоб: 1) митися повністю; 2) мити лише п’яти; 3) мити лише вуха; 4) мити п’яти і вуха.

ІІ. Розв’язки задачі.

Вашій увазі представлені три розв’язки даної задачі:

2.1. Рішення № 1

У розв’язку №1 ми представляємо до вашої уваги рішення задачі за допомогою умовного оператору:

program milo2; var a,n,r:real; x:real;

begin
 writeln ('vvedit kilkist kuskiv mila yaka vam neobxidna i kilkist rokiv');
 readln(a,n);
 if a<24 then writeln ('nelzya')
 else if a>50 then writeln('nezya')
 else
  begin
   writeln ('vvedit variant dii');
   writeln (' 1) mitisya povnisty');
   writeln (' 2) miti tilku pyati');
   writeln (' 3) miti tilki vuxa');
   writeln (' 4) miti pyati i vuxa');
   readln(r);
   if r=1 then x:=a*n;
   if r=2 then x:=a/12*n;
   if r=3 then x:=(a/12 -1)*n;
   if r=4 then x:=(a/12 + (a/12 - 1))*n;
   if r>=5 then writeln ('nelzya');
  writeln ('x=',x:5:0);
 end;
readln;

end.

2.2. Рішення № 2

У розв’язку №2 ми представляємо до вашої уваги рішення задачі за допомогою оператору варіанту case:

program milo1; var a,r,n,x:real; s:integer;

begin
 writeln ('vvedit kilkist kuskiv mila yaka vam neobxidna i kilkist rokiv');
 readln(a,n);
 if a<24 then writeln ('nelzya')
 else if a>50 then writeln ('nelzya')
 else
  begin
   writeln ('vvedit variant dii');
   writeln (' 1) mitisya povnisty');
   writeln (' 2) miti tilku pyati');
   writeln (' 3) miti tilki vuxa');
   writeln (' 4) miti pyati i vuxa');
   readln(s);
   case s of
   1: x:=a*n;
   2: x:=a/12*n;
   3: x:=(a/12-1)*n;
   4: x:=(a/12 + (a/12-1))*n;
  end;
  writeln ('x=',x:5:2);
 end;
readln;

end.

2.3. Рішення № 3

У розв’язку №3 ми представляємо до вашої уваги рішення задачі за допомогою оператору циклів goto:

program rozvyazok_1; label 1,2,3,4,5,6,7; var a,x,n,r:real;

begin
 writeln ('vvedit kilkist kuskiv mila yaka vam neobxidna i kilkist rokiv');
 readln (a,n);
 if a<24 then writeln ('nelzya')
 else if a>50 then writeln('nelzya')
 else
  begin
  writeln ('vvedit variant dii');
  writeln (' 1) mitisya povnisty');
  writeln (' 2) miti tilku pyati');
  writeln (' 3) miti tilki vuxa');
  writeln (' 4) miti pyati i vuxa');
   readln(r);
   2: if r=1 then x:=a*n
    else goto 3;
    writeln ('x=',x:5:0);
   3: if r=2 then x:=a/12*n
    else goto 4;
    writeln ('x=',x:5:0);
   4: if r=3 then x:=(a/12 - 1) * n
    else goto 5;
    writeln ('x=',x:5:0);
   5: if r=4 then x:=((a/12 - 1) + a/12) *n
    else goto 6;
    writeln ('x=',x:5:0);
   6: if r>=5 then writeln('nevozmojno')
    else goto 7;
   7: readln;
  end;
 readln;
end.

Висновки

Ознайомившись з літературою ми розв’язали дану задачу обраними операторами розгалуження. Такими як оператор: умови (if), вибору (сase) та варіанту (goto) і проаналізувавши їх, ми дійшли до висновку, що у даній задачі найвигіднішим вийде користування оператором варіанту case так як він: А) легкий у застосуванні; Б) найменший за обсягом. Що робить його найвигіднішим оператором розв’язку для даної задачі.

7. Список літератури

1. Верлань А. Ф., Апатов М . В. « Інформатика 10-11»

2. Шост Д.М. «Інформатик Turbo Pascal»