вторник, 29 октября 2013 г.

Пора взяться за классы!

Пора, пора сдать задачи на функции и приступить к классам!
С этой недели по графику мы должны приступить к программированию под Windows. На самом деле, мы приступим к нему на следующей неделе. В это время на занятиях я не буду принимать никакие задачи.
Долги по задачам: обсуждение - в блоге (на страницах
сдача - в дополнительное время.

понедельник, 28 октября 2013 г.

Указания по разработке программы на классы

Первая часть указаний по разработке класса, конструкторов и членов-функций смотрите здесь.

Использование друга класса

Добавим в определение класса описание друга:

friend int Frend(FourAngl&, FourAngl&);

и его код (в файл metody.cpp)

int Frend(FourAngl& o1, FourAngl& o2){if(o1.P>o2.P) return 1; else return 0;};

Тогда в main можно сделать заключение, периметр какого четырехугольника больше:

int n=Frend(fig1, fig2);
if (n) cout<<"P1>P2"<<endl;
else cout<<"P1<=P2"<<endl;

То же самое без использования друга: (в main)

if (fig1.Perimetr()>fig2.Perimetr()) cout<<"P1>P2"<<endl;
else cout<<"P1<=P2"<<endl;


Используйте функцию несколько раз

Одну и ту же функцию можно использовать несколько раз с разными параметрами.
Например, в приведенном примере одна и та же функция вызывается для вычисления значения трех разных выражений:

#include <iostream>
using namespace std;
float fun1 ( float p, float q )
         {return p+q;}

void main()
{
float a,b,c,d,f;
cout <<" vvod a,b="; cin >>a>>b;
cout <<" vvod c,d="; cin >>c>>d;
f=fun1(2*a,b);
cout <<" f= 2a+b="<<f <<endl<<" f= c-d="<<fun1(c,-d)<<endl;
cout <<" f= 2a+b-c="<<fun1(f,-c) <<endl;
}

Функция намеренно сделана очень простой. Кроме того, можно влиять на результат, задавая фактические параметры в виде выражений (но это возможно для параметров, передаваемых по значению)..


понедельник, 14 октября 2013 г.

Задание 3. Классы в C++. Инкапсуляция. Наследование. Полиморфизм.



1)      Основательно изучите лекционный материал. Обратите внимание на примеры реализации классов как в в параграфах, описывающих простые классы, так и в примерах наследования.

2)      Напишите программу, реализующую Вашу задачу. При этом:


a)      Спроектируйте класс:

  • Опишите нужные поля (члены-данные класса);
  • Напишите конструктор;
  • Напишите метод (методы), выводящий на экран значения полей (членов-данных класса);
  • Напишите методы (члены-функции) класса, нужные для реализации задачи;
  • Напишите дружественную функцию, описанную в задаче.

b)      Описание класса сделайте в заголовочном файле, описание методов и функцию main- в двух других файлах.

c)      После вызова конструктора обязательно вызовите метод, печатающий значения полей (для проверки)

d)      В функции  main определите несколько объектов (экземпляров класса). Продемонстрируйте решение задачи, во-первых, только с помощью вызова различных методов объекта (объектов) и, во-вторых, с помощью друга класса.
 

вторник, 8 октября 2013 г.

Готовьтесь к аттестационному тесту

Согласно графику учебного процесса, с 14 по 20 октября проводится аттестация.
На оценку 1 нужно защитить одну задачу и сдать тест по темам Данные. Операторы в С/С++.

Примеры тестовых заданий:

№1
программа
#include <math.h>;
void main()
{  int a=100;
   printf("%d",a);
}
Ответы
  • написана верно
  • содержит ошибку (не присоединена нужная библиотека)
  • содержит ошибку (неправильно записано имя библиотеки)
  • содержит ошибку (не описана главная функция)
  • содержит ошибку (неправильно описана переменная)
  • содержит ошибку (неверно написан оператор вывода)


пятница, 4 октября 2013 г.

Публикация программы (вопроса)

Для публикации своей программы или вопроса:

1.Зарегистрируйтесь в Google (создайте аккаунт). Как это делается, смотрите в видео:




2.Войдите в свой аккаунт на google.com, нажмите Войти, введите логин и пароль. Если Вы вошли, в верхнем правом углу страницы увидите своё имя.

3.Перейдите на нужную страницу блога. Внизу введите комментарий (свою программу).

4.Проверьте, чтобы в поле рядом с " " стоял Ваш логин, если его нет (например, потому, что зарегистрирована только почта на Gmail), нажмите на "Просмотр", система предложит Вам дополнить аккаунт или покажет, как будет выглядеть Ваш пост (комментарий).

4.Нажмите "Публикация" и ждите. Вам ответят.

5.Если в посте есть ошибки, которые Вы хотите исправить, нажмите "Изменить".