Форум программистов, компьютерный форум CyberForum.ru

Объясните - C++

Восстановить пароль Регистрация
 
imm
 Аватар для imm
8 / 8 / 2
Регистрация: 25.10.2013
Сообщений: 101
Завершенные тесты: 2
25.10.2013, 15:42     Объясните #1
Вот собственно и программа...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
 
 
using namespace std;
 
int main()
{int x;
scanf ("%d", &x);
double y=0.0;
for (int i=1; i<=5; i++)
{double r=(pow((double)x, (double)i))/i;
if (i%2==0)
y-=r;
else y+=r;
}
printf ("%0.1f",y);
system("PAUSE");
return 0;
}

знаю, программа совсем простенькая, но я только начал изучать это все, поэтому, пожалуйста, разложите по полочка, что и как она делает.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2013, 15:42     Объясните
Посмотрите здесь:

C++ объясните
C++ объясните
объясните C++
C++ Объясните новичку
Объясните условие C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Banddk
37 / 37 / 1
Регистрация: 08.12.2012
Сообщений: 157
Записей в блоге: 1
25.10.2013, 15:48     Объясните #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include "math.h"// подключается для функции возведения в степень pow
int main(int argc, const char * argv[])
{
    int x;
    scanf ("%d", &x);//считывает x из консоли
    double y=0.0;
    for (int i=1; i<=5; i++)//задается цикл в котором 5 шагов
    {double r=(pow((double)x, (double)i))/i; //число r=(x^i)/i
        if (i%2==0)//если i четное
            y-=r; //то y=y-r
        else y+=r;//в противном случае y=y+r
    }
    printf ("%0.1f",y);//выводим y c точностью до десятых
    return 0;
}
Hunter13ua
46 / 46 / 5
Регистрация: 25.10.2011
Сообщений: 183
25.10.2013, 15:50     Объясните #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdlib.h> //подключение стандартной библиотеки функций
#include <stdio.h> //стандартная библиотека ввода/вывода
#include <math.h> //библиотека математических функций
 
using namespace std; //для этого необходимо подключить еще #include <iostream>
//эта строчка означает, что функции, например cin|cout, можно будет вводить сразу:
//cin >> x; cout << x;
//без той строчки надо было бы std::cin >> x; std::cout << x;
 
int main() // начало основной программы
{
    int x; //инициализация переменной "х" типа целых чисел
    scanf ("%d", &x); //ввод с клавиатуры целого числа в переменную "х"
    double y=0.0; //инициализация переменной "у" типа дробных чисел и присвоение ей 0.0
    for (int i=1; i<=5; i++) // начало цикла, который повторится 5 раз
    {
          double r=(pow((double)x, (double)i))/i; //на каждой итерации создается переменная
                                                               // "r", в которую записывается "х" в степени "i"
          if (i%2==0) // если "i" четное
                y -= r; // тогда "у" уменьшается на "r"
          else // если нет, то
                y += r; // "у" увеличивается на "r"
     } // конец цикла
     printf ("%0.1f",y); // вывод "у" на экран с точностью 1 цифра после комы
     system("PAUSE"); // ожидание нажатия клавиши до закрытия программы
     return 0; // конец
}
imm
 Аватар для imm
8 / 8 / 2
Регистрация: 25.10.2013
Сообщений: 101
Завершенные тесты: 2
25.10.2013, 15:53  [ТС]     Объясните #4
Спасибо, все понятно.
Yandex
Объявления
25.10.2013, 15:53     Объясните
Ответ Создать тему
Опции темы

Текущее время: 11:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru