Още операции в езика С++ - урок 9

декември, 06, 2011
  • Учебни помагала

Алгоритмично направление: Елементи на езика С++.

Брой часове: 2

Цели:

1. Разширяване на кръга на операциите в С++ с обяснение начин на изписване и примери за:

  • Аритметични отношения (>, <, >=, <=, == -равно, != - различно);
  • Логически операции (конюнкция, дизюнкция и отрицание и приоритетът на изпълнението им пред аритметичните отношения);
  • Операция за условен избор (синтаксис и семантика);
  • Операция за последователно изпълнение (синтакси, семантика, резултат от операцията и тип на резултата);
  • Операция за размер на обекта – “sizeof” (синтаксис, резултат от операцията).

2. Изграждане на начални умения за проверка на условие, описание на условия, получени с операции между няколко условия. 

Учебно съдържание:

Основни понятия: аритметични отношения, логически операции – конюнкция, дизюнкция и отрицание, операция за условен избор (условна операция), операция за последователно изпълнение, операция за размер на обект – “sizeof” .

Структура на учебното съдържание:

3. Аритметични отношения (>,<,>=,<=,==,!=)

  • числова стойност на аритметичните отношения;
  • синтаксис и семантика.

4. Условна операция (операция за условен избор)

  • синтаксис;
  • семантика;
  • резултат от операцията;
  • тип на резултата.

5. Операция за последователно изпълнение – означава се с “ ,”

  • синтаксис;
  • семантика;
  • резултат от операцията;
  • тип на резултата.

6. Операция за размер на обект - означава се със sizeof

  • синтаксис;
  • семантика;
  • резултат от операцията;
  • тип на резултата.

7. Операция за преобразуване на типове

  • синтаксис;
  • семантика;
  • резултат от операцията;
  • тип на резултата.

Въпроси и задачи за контрол и самоконтрол:

Зад. 1. Пресметнете стойността на х:

а) х=15>3+6 ? 1:0;

б) x=(y=3 , y+2);

а)(int) 17/4;

б)(int) 17/4.0;

в)sizeof (long);

Зад. 2. Какъв е резултата от изпълнение на  операциите, ако a=3, b=2, c=4:

а) b+3>=a*c-7; б) a==(b=12) в) 15+c!=a*b-c.

Зад. 3. Да се състави програма plo4ka, която прочита от клавиатурата широчината a и дължината b на правоъгълен под и широчината c и дължината d на фаянсова плочка и отпечатва минималния брой плочки, необходими за покриване на пода. Приемаме, че ако някъде трябва да се постави част от плочка, е необходимо да се закупи цяла плочка за това място. Плочките могат да се поставят само успоредно на пода.

Примерен вход:

110 140 20 30

Примерен изход:

28

Зад. 4. В една библиотека има три вида печатни издания – книги, вестници и списания. Служителите добре знаят, че книгите са  а, вестниците – b, а списанията – c. За да се подредят на лавиците, обаче, те трябва да се разделят на групи по 15. Да се състави програма BIBLIO, която прочита от клавиатурата a, b и c и отпечатва броя на купчините книги, вестници и списания.

Примерен вход:

45 25 48

Примерен изход:

knigi – 3

vestnici – 2

spisania - 4

Зад. 5. Да се състави програма, която разменя и отпечатва стойностите на х и у, ако х е по-голямо от у.

Тази тема запознава учениците с още някои операции на езика С++. Отделянето им в самостоятелна тема позволява по-доброто им усвояване. Най-големи трудности се срещат при усвояването на логическите операции и прилагането им в контекста на условната операция. Посочените за упражнения задачи позволяват да се  затвърдят знанията за новите операции и основно на условната операция.

След тази, следват още няколко теми от същото ниво, в които се използват някои от операциите. По този начин знанията се затвърждават и „улягат”. Те са особено необходими в темата „Условни оператори” и предварителното запознаване с логическите операции и изтраждането на умения за изразяване на условия допринася за по-пълноценното възприемане на оператора if и съпътстващите го кратък условен оператор и съставен оператор.

По време на урока не трябва да се пропуска да се напише поне една програма и да се повторят за пореден път всички стъпки на този процес. Вече все по-често трябва да се изисква от учениците да съставят собствени тестови примери и да тестват програмите си с тях.