Примеры задач на С/С++ пройденные на уроке.

Данные примеры компилировались в программе CodeBlocks http://www.codeblocks.org/downloads/26
Руководство по созданию проектов в codeblocks на русском языке.
Все проекты создаются в режиме С++
При необходимости даются ссылки на пояснения и примеры.
Стандартные комментарии в последующих примерах уже не повторяются.
Если нет комментария какой либо строки, ищи их в примерах выше.

Первый пример: "Hello, World"

// Две наклонные черты это признак начала комментария до конца строки.
// Подключаем к нашей программе файл с именем iostream,
// в котором содержится описание стандартной библиотеки ввода-вывода языка C++.
// В этом файле находится, в частности, определение объектов cout и endl
#include <iostream> // Указываем компилятору на то, что мы будем использовать все функции, входящие в пространство имен std,
// то есть все функции, относящиеся к стандартной библиотеке C++
using namespace std; // Объявляем функцию main, не принимающей никаких аргументов и возвращающей значение int.
// Эта функция должна быть в каждой программе, именно эта функция получает управление при запуске программы.

int main() {
// здесь открывающая фигурная скобка, означает начало функции main
// при помощи оператора << помещаем в объект cout строку "Hello, world!", // а потом специальный объект endl, означающий символ перевода строки,
// что приводит к печати на экране этой строки и последующему переводу каретки
    cout<<"Hello, world!"<<endl;
// даем инструкцию return, завершающую выполнение функции main и возвращающую нулевое значение
    return 0;
}
      // здесь закрывающая фигурная скобка, означает конец функции main Смотри точнее http://informatics.mccme.ru/moodle/mod/book/view.php?id=578

 

Ввод и вывод значений

 

Условное ветвление

Итак, условная инструкция в C++ имеет следующий синтаксис:

       if (Условие)
      {
          Блок инструкций 1
      }
      else
      {
          Блок инструкций 2
      }

Блок инструкций 1 будет выполнен, если Условие истинно. Если Условие ложно, будет выполнен Блок инструкций 2.

Смотри примеры и пояснения http://informatics.mccme.ru/moodle/mod/book/view.php?id=547

Пример в стиле С с использование для вывода функции puts()

// Включение заголовочных файлов, которые описывают константы, переменные, функции, классы и пр.
// библиотечных модулей. В случае их применения необходимые модули на этапе сборки программы
// компоновщиком будут подключены к бинарному коду программы
#include <iostream>
#include <string>
#include <stdio.h>


using namespace std;

int main() {
    int i; // создаём переменную целого типа
    
i=6;   // присваиваем значение переменной
    if (i==6) // сравниваем i с числом 6
        puts("Equal to 6"); // если i равен 6-ти то вывести слово "Equal to 6"
    else if (i<6) // проверяе i меньше 6-ти ?
        puts("Less then 6"); // если i меньше 6-ти то вывести слово "Less then 6"
    else // в ином случе (а в данном случае если i больше 6-ти)
        puts("Greater then 6"); // в ином случае вывести слово "Greater then 6"
    return 0; // возвращаем 0 при завершении программы (нормальное завершение программы)
}

Тот же пример в стиле С++

#include <iostream>
#include <string>

using namespace std;

int main() {
    int i; // создаём переменную целого типа
    i=6;   // присваиваем значение переменной
    if (i==6) // сравниваем i с числом 6
        
cout << "Equal to 6" << endl; // если i равен 6-ти то вывести слово "Equal to 6" и перевод строки
    else if (i<6) // проверяе i меньше 6-ти ?
        cout << "Less then 6" << endl; // если i меньше 6-ти то вывести слово "Less then 6" и перевод строки
    
else // в ином случе (а в данном случае если i больше 6-ти)
        cout << "Greater" << endl; // в ином случае(если i больше 6-ти) вывести слово "Greater then 6" и перевод строки
    return 0; // возвращаем 0 при завершении программы (нормальное завершение программы)
}


Оператор выбора и условного ветвление

Оператор switch предназначен для организации выбора из множества различных вариантов. Формат оператора следующий:

switch ( выражение ) { [объявление] : [ case константное-выражение1]: [ список-операторов1] [ case константное-выражение2]: [ список-операторов2] : : [ default: [ список операторов ]] }
читай далее http://www.cyberguru.ru/cpp/cpp-programming-guide-page43.html, http://msdn.microsoft.com/ru-ru/library/k0t5wee3.aspx

#include <iostream>
#include <string>
#include <stdio.h>

int main()
{
    int i;
    cout << "Vvedi chislo" << endl; cin >> i;
// о
    switch(i) // будем проверять переменную i на следующие значения
    {
        case 2: cout << "equal 2" << endl;
                break;
        case 4: cout << "equal 4" << endl;
                break;
        case 7: cout << "equal 7" << endl;
                break;
        case 67: cout << "equal 67" << endl;
                break;
        default: cout << "does not exist" << endl;
    }
    return 0;
}


#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
  int m[10]={1,-3,5,-7,9,-11,13,-10,8,6};
  int p;
  for( int i=0 ; i<10; i++ )
    cout << m[i] << " ";
  p = m[0];
  for( int i=0 ; i<10; i++ ){
    if ( p < m[i] ) p = m[i];
  }
  cout << "Max= " << p << endl;
  return 0;
}


#include <iostream>
#include <cstdlib>
using namespace std;
#define arrsize 24
int main()
{
  int m[arrsize];//={1,-3,5,-7,9,-11,13,-10,8,6};
  for( int i=0 ; i<arrsize ; i++ ) m[i]=(rand() % 100);
  for( int i=0 ; i<arrsize ; i++ ) cout << m[i] << " ";
  cout << endl;
//--------------------------------------------
// Integrirujem (primitivno, summoi znachenij blizhaishih elementov)
  for(int j=0; j<20; j++){
    for( int i=0 ; i<arrsize-2 ; i++ ){
      m[i+1]=(m[i]+m[i+1]+m[i+1)/3;
    }
  for( int i=0 ; i<arrsize ; i++ ) cout << m[i] << " ";
  cout << endl;
  }
//---------------------------------------------
  cout << "Extremums: " << endl;
  for( int i=0 ; i<arrsize-2 ; i++ ) {
    if((m[i] < m[i+1] && m[i+1] > m[i+2])
    ||
      (m[i] > m[i+1] && m[i+1] < m[i+2]))
    cout << m[i+1] << " ";
  }
  return 0;
}


Задача:
// Создать массив размером 24
// Заполнить его случайными числами
// Вывести значения массива
// Запросить ввод целого числа
// Ввести искомое число
// Найти в массиве это число
// если нашли, вывести номер(а) индекса(ов) массива (не забудь перевод строки или пробел после вывода индекса)
// если не найдено ни одного числа, сообщить об этом на экране


Примеры работы со строками в С++ http://anaturb.net/C/string_exapm.htm


#include <iostream>
#include <string>
using namespace std;
int main()
{
  string str1 ("green apple");
  string str2 ("red apple");
  if (str1.compare(str2) != 0)
  cout << str1 << " is not " << str2 << "\n";
  if (str1.compare(6,5,"apple") == 0)
  cout << "still, " << str1 << " is an apple\n";
  if (str2.compare(str2.size()-5,5,"apple") == 0)
  cout << "and " << str2 << " is also an apple\n";
  if (str1.compare(6,5,str2,4,5) == 0)
  cout << "therefore, both are apples\n";
  return 0;
}



#include <iostream>
#include <string>
using namespace std;
int main()
{
  string str; str="";
  do
  {
    if(str.compare("d")==0 || str.compare("quit")==0) return 0;
    if(!str.empty()) { cout << endl; cout << "String is : " << str << endl; }
    cout << "Enter string for testing " << "(d to quit) : ";
  } while( cin >> str );
  return 0;
}



#include <iostream>
#include <string>
using namespace std;
int main()
{
  char *line = "short line for testing";
// with no arguments
  string s1;
  s1 = "Vadim";
  cout << "s1 is: " << s1 << endl;
// copy constructor
  string s2 (s1);
  cout << "s2 is: " << s2 << endl;
// one argumen
  string s3 (line);
  cout << "s3 is: " << s3 << endl;
// first argumen C string
// second number of characters
  string s4 (line,10);
  cout << "s4 is: " << s4 << endl;
// 1 - C++ string
// 2 - start position
// 3 - number of characters
  string s5 (s3,6,4); // copy word 'line' from s3
  cout << "s5 is: " << s5 << endl;
// 1 - number characters
// 2 - character itself
  string s6 (60,'-');
  cout << "s6 is: " << s6 << endl;
// 1 - start iterator
// 2 - end iterator
  string s7 (s3.begin(),s3.end()-5);
  cout << "s7 is: " << s7 << endl;
  return 0;
}


#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
  float p,k,v,a;
  printf (" Vvedi 4islo ");
  cin >> p;
  printf (" p = %f ",p); cout << endl;
  cin >> k;
  cout << k << endl;
  printf (" k = %f ",k); cout << endl;
  cin >> v;
  cout << v << endl;
  printf (" v = %f ",v); cout << endl;
  a=k+v+p;
  cout << "summa = " << a << endl;
  return 0;
}




#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
int main()
{
  string a,b;
  printf(" vvedi a= ");
  cin >> a;
  printf(" vvedi b= ");
  cin >> b;
  cout << b << a << endl;
  return 0;
}



#include <iostream>
#include <stdio.h>
#include <string>
#include <cctype>
#include <cstring>
using namespace std;
int main()
{
  string a,b;
  printf(" vvedi a= ");
  cin >> a;
  cout << a << endl;
  for(int i=0; i < strlen(a.c_str()); i++){
    a[i]=toupper(a[i]);
  }
  cout << a << endl;
  return 0;
}


#include <iostream>
#include <string>
using namespace std;
int main()
{
  cout << "vvedite stroku" << endl;
  string s1;
  cin >> s1;
  cout << "vvedite iskomyi simvol" << endl;
  string s2;
  cin >> s2;
  int count=0;
  size_t found;
  for(int i=0; i<s1.size(); i++ )
  {
    if(s1[i]==s2[0]) count++;
  //if(found=s1.find(s2) != string::npos) { i=found+1; count++; }
  }
  if(count==0) cout << "net vhozhdenii" << endl;
  else cout << "element vstrechaetsja: " << count << " raz" << endl;
  return 0;
}


Домашнее задание

Изменить нижестоящий код таким образом чтобы он выполнял поиск первых двух символов строки s2 в строке s1.
Сопроводить изменённые строки пояснительными комментариями.

Вадим

PS!!! задачу желательно выполнить самостоятельно, чтобы уметь ответить на вопросы и лучше разобраться в программировании


Это задача выпонялась в классе 18 октября.

Данный код выполняет поиск первой буквы строки s2 в строке s1.


#include <iostream> // включить заголовок описывающий потоковый ввод/вывод
#include <string> // включить заголовок описывающий класс string и прилагающиеся строковые функции

using namespace std; // пространство имён (переменных, функций, констант, типов, классов, методов и тд)

int main() // вход в программу, обязательно присутсвует в программе, но может отсутсвовать в библиотеках и модулях
{
// Определим в начале используемые переменные
  string s1, s2; // декларируем компилятору что мы будем использовать две переменные строкового типа
  int count=0; // счётчик совпадений
  int i; // итератор для обработки элементов строки

// Произведём ввод данных
  cout << "vvedite stroku" << endl; // запрос на ввод первой строки, в которой будем искать символы
  cin >> s1; // введём первую строку, в которой будем искать символы
  cout << "vvedite iskomyi simvol" << endl; // запрос на ввод 2-й строки, символы которой мы будем искать в первой строке
  cin >> s2; // введём вторую строку

// Произведём работу с данными
// В нашем случае подсчитаем количество совпадений искомого символа из строки s2 встречаемого в строке s1
// Начиная с 0-го символа строки и до тех пока не дошли до конца строки, где s1.size() возвращает длину первой строки в байтах
// проверяем совпадения (производим действия)
// в конце цикла увеличиваем i(индекс строки) на единицу
  for(i = 0; i < s1.size(); i++ )
  {
// проверяем совпадения
    if(s1[i]==s2[0]) // 1 сравниваем значение элемента строки(массива символов) с искомым символом 0-ым элементом строки 2
    {
      count++; // если элементы равны, то увеличиваем счётчик совпадений на 1, в ином случае продолжаем программу
    }
  }
// Выведем результаты вычислений/поиска
  if(count==0) // если не найдено ни одного совпадения - счётчик совпадений равен 0
  cout << "net vhozhdenii" << endl; // вывести информацию об отсутсвии совпадений
  else // иначе если найдено хотябы одно совпадение - кол-во совпадений больше 0
  cout << "element vstrechaetsja: " << count << " raz" << endl; // вывести информацию о кол-ве совпадений
// Окончание программы
  return 0; // если перед функцией main указан тип int, то это обязательный результат работы возвращаемый программой, по умолчанию это 0
}


// Данный код выполняет множественный поиск первых 3 символов строки s2 в строке s1.
#include <iostream> // включить заголовок описывающий потоковый ввод/вывод
#include <string> // включить заголовок описывающий класс string и прилагающиеся строковые функции
using namespace std; // пространство имён (переменных, функций, констант, типов, классов, методов и тд)
int main() // вход в программу, обязательно присутсвует в программе, но может отсутсвовать в библиотеках и модулях
{
// Определим в начале используемые переменные
  string s1, s2; // декларируем компилятору что мы будем использовать две переменные строкового типа
  int count=0; // счётчик совпадений при поиске подстроки
  int i; // итератор для обработки элементов строки
// Произведём ввод данных
  cout << "vvedite stroku" << endl; // запрос на ввод первой строки, в которой будем искать символы
  cin >> s1; // введём первую строку, в которой будем искать символы
  cout << "vvedite iskomyi simvol" << endl; // запрос на ввод 2-й строки, символы которой мы будем искать в первой строке
  cin >> s2; // введём вторую строку
// Произведём работу с данными
// В нашем случае подсчитаем количество совпадений искомого символа из строки s2 встречаемого в строке s1
// Начиная с 0-го символа строки и до тех пока не дошли до конца строки, где s1.size() возвращает длину первой строки в байтах
// проверяем совпадения (производим действия)
// в конце цикла увеличиваем i(индекс строки) на единицу
  for( i=0; i<s1.size(); i++ )
  {
// проверяем совпадения
// если значения 0-го символа строки s1(массива символов) равно 0-ому элементу строки s2
// И значения 1-го символа строки s1(массива символов) равно 1-ому элементу строки s2
// И значения 2-го символа строки s1(массива символов) равно 2-ому элементу строки s2
    if(s1[i]==s2[0] && s1[i+1]==s2[0+1] && s1[i+2]==s2[0+2])
    {
      count++; // если условие истинно, то увеличиваем счётчик совпадений на 1, в ином случае продолжаем программу
    }
  }
// Выведем результаты вычислений/поиска
  if(count==0) // если не найдено ни одного совпадения - счётчик совпадений равен 0
    cout << "net vhozhdenii" << endl; // вывести информацию об отсутсвии совпадений
  else // иначе если найдено хотябы одно совпадение - кол-во совпадений больше 0
    cout << "element vstrechaetsja: " << count << " raz" << endl; // вывести информацию о кол-ве совпадений
// Окончание программы
  return 0; // если перед функцией main указан тип int, то это обязательный результат работы возвращаемый программой, по умолчанию это 0

}


// Данный код выполняет множественный поиск строки s2 в строке s1.
#include <iostream> // включить заголовок описывающий потоковый ввод/вывод
#include <string>
// включить заголовок описывающий класс string и прилагающиеся строковые функции
using namespace std; // пространство имён (переменных, функций, констант, типов, классов, методов и тд)
int main() // вход в программу, обязательно присутсвует в программе, но может отсутсвовать в библиотеках и модулях
{
// Определим в начале используемые переменные
  string s1, s2; // декларируем компилятору что мы будем использовать две переменные строкового типа
  int count=0; // счётчик совпадений при поиске подстроки
  int i,j; // итератор для обработки элементов строки
  int k; // флаг одинаковости строк
// Произведём ввод данных
  cout << "vvedite stroku" << endl; // запрос на ввод первой строки, в которой будем искать символы
  cin >> s1; // введём первую строку, в которой будем искать символы
  cout << "vvedite iskomyi simvol" << endl; // запрос на ввод 2-й строки, символы которой мы будем искать в первой строке
  cin >> s2; // введём вторую строку
// Произведём работу с данными
// В нашем случае подсчитаем количество совпадений искомого символа из строки s2 встречаемого в строке s1
// Начиная с 0-го символа строки и до тех пока не дошли до конца строки, где s1.size() возвращает длину первой строки в байтах
// проверяем совпадения (производим действия)
// в конце цикла увеличиваем i(индекс строки) на единицу
// i - счётчик(индекс) елементов строки(массива символов) s1
  for( i=0; i<s1.size(); i++ )
  {
// проверяем посимвольно совпадения
// в каждом цикле сравниваем очередной символ строки s1 с очередным символом строки s2
// до тех пор пока j меньше количесва символов в строке s2, размер строки s2 вычисляем с помощью метода s2.size()
// j - счётчик(индекс) елементов строки(массива символов) s2
// к - флаг одинаковости строк, к=1 значит строки равны, когда обнуляем (к=0) - значит строки не равны между собой
    for( j=0, k=1; j<s2.size(); j++ )
    {
// s1[i+j] - это указатель на элемент смещённый относительно указателя i строки s1 на j символов вправо
      if( s1[i+j] != s2[j] ) k=0; // если елементы(символы строк в указанных позициях) не равны сбрасываем флаг одинаковости строк
    }
    if(k != 0) count++; // если элементы равны, флаг одинаковости строк не равен нулю, то увеличиваем счётчик совпадений на 1
// в ином случае продолжаем выполнение цикла
  }
// Выведем результаты вычислений/поиска
  if(count==0) // если не найдено ни одного совпадения - счётчик совпадений равен 0
    cout << "net vhozhdenii" << endl; // вывести информацию об отсутсвии совпадений
  else // иначе если найдено хотябы одно совпадение - кол-во совпадений больше 0
    cout << "element vstrechaetsja: " << count << " raz" << endl; // вывести информацию о кол-ве совпадений
// Окончание программы
  return 0; // если перед функцией main указан тип int, то это обязательный результат работы возвращаемый программой, по умолчанию это 0
}


// Знакомство со структурами данных
#include <iostream>
#include <string>

using namespace std;

// декларируем(обьявляем) новую структуру данных по названием movies_t
// Которая описывает фильм с помощью полей: "название", год выпуска
struct movies_t { // декларируем новую структуру данных со следующими элементами(переменными)
  string title; // название фильма, типа string (строка)
  int year; // год выпуска, типа целое число
};
// используя новый тип данных(созданный нами) movies_t
movies_t mine, yours; // создаём реальные обьекты в памяти

// декларируем(обьявляем) функцию вывода данных обьекта
void printmovie (movies_t movie); // функция будет описана в конце программы

int main()
{
  mine.title = "2001 A Space Odyssey"; // в обьект "mine" в поле title вводим название фильма
  mine.year = 1968; // туда же год выпуска
  cout << "Enter title: "; // запрос названия твоего любимого фильма для обьекта "yours"
  cin >> yours.title; // ввод строки в элемент title обьекта "yours"
  cout << "Enter year: "; // запрос года выпуска твоего любимого фильма для обьекта "yours"
  cin >> yours.year; // ввод строки в элемент year обьекта "yours"
  cout << "My favorite movie is:\n "; // вывести заголовок
  printmovie (mine); // вывести значения элементов обьекта mine, с помощью созданной нами функции
  cout << "And yours is:\n "; // вывести заголовок
  printmovie (yours); // вывести значения элементов обьекта yours
  return 0;
}

// Описывем функцию для распечатки данных обьекта типа movies_t описанную выше
// в функцию данные передаются через параметр типа movies_t
// для обработки этого параметра будем использовать имя movie
// формат вывода: наименование(год выпуска), где год выпуска находится в скобках
// функция ничего не возвращает, на что указывает оператор void перед названием функции
void printmovie (movies_t movie)
{
  cout << movie.title; // вывод названия фильма
  cout << " (" << movie.year << ")\n"; // вывести открывающую скобку, год выпуска, закрывающую скобку
}


// Struktura tochka i obsluzhivajushije funktsii
#include <iostream>
using namespace std;
struct tochka { int x, y; }; // koordinaty
void pokazi_x(tochka p) { cout<< "x=" << p.x << endl; } // vyvesti na terminal znachenije elementa x struktury tochka
void pokazi_y(tochka p) { cout<< "y="<< p.y << endl; } // vyvesti na terminal znachenije elementa y struktury tochka
int dai_x(tochka p) { return p.x; } // vernutj znaxhenije x
int dai_y(tochka p) { return p.y; } // vernutj znaxhenije y
// &p eto operator izvlechenija adresa objekta p
void izmeni_x(tochka &p, int novyj_x) { p.x = novyj_x; } // izmenitj znachenije elementa x struktury tochka na novoje, novyj_x -> x
void izmeni_y(tochka &p, int novyj_y) { p.y = novyj_y; } // izmenitj znachenije elementa y struktury tochka na novoje, novyj_y -> y
int main()
{
  tochka a,b,c; // sozdadim 3 objekta tipa tochka
  a.x = 23; // prisvoim znachenije elementu x objekta a
  pokazi_x(a); // vyvedem znachenije elementa x objekta a
  izmeni_x(a, 11); // izmenitj znachenije elementa x objekta a na novoje
  pokazi_x(a); // snova vyvedem znachenije elementa x objekta a
  izmeni_y(b, 11); // izmenitj znachenije elementa y objekta b na novoje
  pokazi_y(b); // snova vyvedem znachenije elementa y objekta b
  return 0;
}



// Sozdanije klassa tipa tochka, kotoryj sostoit iz koordinat x,y i obsluzhivajushih funktsij
#include <iostream>
using namespace std;
class tochka {
  private: // opredeljajem tip dostupa private - nelzja neposredstvenno obrashatsja k nizhestojashim elementam objekta
  // v nashem sluchaje k x i y
  int x, y;
  public: // opredeljajem tip dostupa public - razresheno k etim elementam objekta obrashatsja
  // Konstruktor klassa
  // funktsija imejushaja takoje zhe nazvanije kak i sam klass nazyvajetsja konstruktorom
  tochka(int novyj_x, int novyj_y){ x = novyj_x; y = novyj_y; }

  // Metody klassa dostupny vsem
  int dai_x() { return x; }
  int dai_y() { return y; }
  void izmeni_x(int novyj_x) { x = novyj_x; }
  void izmeni_y(int novyj_y) { y = novyj_y; }
  void pokazi_x() { cout << "x=" << x << endl; }
  void pokazi_y() { cout << "y=" << y << endl; }
  void sravni_x(tochka inoj) {
    if ( x == inoj.x ) // sravnitj x mojego objekta s elementom x drugogo objekta
      cout << "x i inox.x ravny" << endl;
    else
      cout << "x i inox.x ne ravny" << endl;
  }
};
int main()
{
  tochka a(33,25), b(33,33); // sozdadim 2 objekta tipa tochka s nachaljnymi parametrami dlja x i y
  a.pokazi_x(); a.pokazi_y(); b.pokazi_x(); b.pokazi_y(); // vyvedem na ekran sostojanije x i y objektov a i b
  a.sravni_x(b); // Pokazhem rezuljtat sravnenija a.x s elementom b.x
  return 0;

}



Zadach na uroke:
1. Napisatj metod pokazyvajushij rezuljtat peremnozhenija x i y
2. Napisatj metod sravnenija svoih x i y s x i y drygogo objekta tipa tochka

Zadacha na dom:

1. Dobavitj k klassu element color tipa int - gde budem hranitj ctsvet tochki nomerom
2. Napisatj metod vuvodjashij tsvet tochki objekta
3. Napisatj metod pozvoljajushij izmenit tsvet objekta
4. Metod dolzhen proveritj vvodimoje chislo, ono dolzhno bytj mezhdu 0-15.
Metod ne dolzhen menjatj tsvet tochki esli vvodimoje chislo ne nahoditjsa mezhdu 0 i 15


Отправлено: 8 ноября 2012 г. 17:57
Кому: PV-11
Копия: Vadim Veeremaa
Тема: C++ prinmer s uroka 08.11.2012


NB !!Na sledujushem uroke kontroljnaja po primeneniju vychislenij i matematicheskih funktsij!!!

Primer s uroka:

#include <iostream>
#include <cmath> // podkljuchitj matematicheskije funktsii

using namespace std;

// Matematicheskije funktsii i prioritet operatsij
// operatsii * i / silnee + i -, operatsii v kruglyh skobkah vypolnjajutsja ranjshe

int main()
{
  float x,y,r,k,t;
// mozhno i tak
// float x; float y;
// prisvaivajem znachenija
  x = 2;
  y = 4;
// vychiskjajem znachenija r
  r = (x * x) + 2 * (y * y); // = 5
  r = r + 2; // uvelichivaje r na 2
// no mozhno i tak
// r += 2;

// vychiskjajem znachenija k
  k = r + (x*x*x) + 2*y;

// vychislim znachenije vozvedenija v stepenj
  t = pow(x,y); // vozvedenije X v stepenj Y
  cout << x << " v stepeni" << y << " = " << t << endl;
// vychislim kvadratnyj korenj iz t kotoryj vychislili do etogo
  k = sqrt(t);
  cout << "kvadratnyj koren iz " << t << " = " << k << endl;
// izmenim x i posmotrim chto budet s rezuljtatom vozvedenija v stepenj
  x = x + 4; // teperj x ravno 5
  t = pow(x,y); // vozvedenije X v stepenj Y
  cout << x << " v stepeni" << y << " = " << t << endl;
  return 0;
}


Использование математических опреаций и функций

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
  float a,c,e,q,x,y,t,g,z,k,b;
  c=3;
  e=5;
  q=1;
  x=2;
  y=4;
  t=0.5;
  g=1.5;
  z=2.3;

  a= (c + pow(e,y-1)) / (q + pow(x,2) * abs(y - t * g * z));
  cout << "a= " << a << endl;

  b= q + abs(y - z) + (pow(y-x,2)) / 2 + (pow(abs(y - x),3))/3;
  cout << "b= " << b << endl;

  return 0;
}


Thursday, November 15, 2012 5:19 PM

#include <iostream>
#include <string>
using namespace std;

int main()
{
  int a,b,c;
  string s,k;
  s = "aaaa";
  k = "bbbb";
  a=5; c= 12;
  b=10;
// a <= b <= c
  if(a<=b && b<=c) { cout << "b is between a nd c" << endl; a++; b++; c++; }

  cout << "a= " << a << " b= " << b << endl;
  if(a<b) cout << "a < b " << endl;
  if(a>b) cout << "a > b " << endl;
  if(a==b) cout << "a = b " << endl;
  if(a<b) cout << "a < b " << endl;
  else if(a>b) cout << "a > b " << endl;
  else cout << "a = b " << endl;
  if(s.compare(k) == 0) {
    cout << "string are equal" << endl;
    a++;
  }
  else cout << "string are not equal" << endl;
  return 0;
}

#include <iostream>
int main()
{
}