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

Вычислить сумму чисел между k ым и n ым элементами последовательности степеней числа 3: 1392781… - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как определять какой метод должен быть статическим, а какой нет? http://www.cyberforum.ru/cpp-beginners/thread631722.html
Quer::add_line_to_vec: недопустимый вызов нестатической функции-члена
C++ Комплексные числа Здравствуйте. Изучаю сейчас C++ по Дейтелам, там попалось задание - создать класс комплексное число с функциями: сложение, вычитание, вывод числа в виде (re, im). Была проблема с первыми двумя... http://www.cyberforum.ru/cpp-beginners/thread631619.html
Подсчитать количество отрицательных чисел C++
Посчитать кол-во. отрецательных чисел среди 3 веденных с клавиатуры чисел k=0; cin>>a>>b>>c; k++; if(a<0) k++; k=k+1; if(b<0) k++; if(c<0) k++;
Опредилить сумму чисел 6-значного числа C++
Опредилить сумму чисел 6 значного числа. Вот мой наброски, помогите дописать! #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv)
C++ Парсер HTML http://www.cyberforum.ru/cpp-beginners/thread631573.html
Хочу написать прогу по выборке из своих html файлов некоторых тегов (img например). Пошел искать библиотеки парсинга и запутался. Их оказалось очень много и все со своими фичами и заворотами. ...
C++ Изменение функции для DllMain Здравствуйте. Вот есть файл cpp, в нем DllMain: #include "stdafx.h" #include "windows.h" #include "header_dll.h" #include "resource_dll.h" HINSTANCE hInstance; подробнее

Показать сообщение отдельно
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
02.08.2012, 11:36
Вот что я начудил
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <iostream>
#include <sstream>
#include <cmath>
#include <Windows.h>
using namespace std;
 
long long my_sum(char* instr) //ф-ция возвращает сумму цифр со строки
{
    long long retval;
    int i;
 
    retval = 0;
    for (; *instr; instr++) {
        retval+=(*instr - '0');
    }
    return retval;
}
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
 
    const int num = 3;
    //для начала генерируем последованости степеней числа num
    cout<<"Для какой степени будем считать (не больше 10)?: ";
    int pow_;
    while (!(cin>>pow_) || pow_<0 || pow_>10)
    {
        cin.clear();
        cin.sync();
        cout<<"Некоректное число. Попробуйте снова: ";
    }
    stringstream ss;
    for (int i = 0; i<pow_+1; i++)
        ss << static_cast<long long>(pow(num, i));
    cout<<"Наша последовательность: "<<ss.str()<<endl;
 
    cout<<"Теперь, введите диапазон для подсщета суммы цифр от k до n (от 0 до "<<ss.str().size()
        <<", k<n):\n";
    int k , n;
    while (!(cin>>k>>n) || k>n || n>ss.str().size())
    {
        cin.clear();
        cin.sync();
        cout<<"Некоректный диапазон. Попробуйте снова: ";
    }
    string temp = ss.str();  //закидываем нашу последовательность с потока в переменную string
    temp.erase(0, k+1); temp.erase(n-1, temp.back()); //отрезаем неужный кусок спереди и ссади
    char buffer[256];
    strcpy(buffer, temp.c_str());
    //считаем сумму всех цифр
    cout<<"Сумма всех цифр в последовательности не включая k и n: "<<my_sum(buffer)<<endl;
    system("pause");
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru