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

Получить последовательность число цифр которой равно знаменателю, а сумма этих цифр -числителю - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массивы. Классы. Нахождение среднего значения дробей http://www.cyberforum.ru/cpp-beginners/thread1233558.html
Напишите функцию main(), которая получает случайные дробные числа от пользователя, сохраняет их в массиве типа fraction, вычисляет среднее значение и выводит результат. т.е. пользователь вводит к...
C++ Функция должна возвращать новый массив, состоящий из отрицательных элементов исходного массива У меня есть задание: написать функцию (процедуру) с параметрами для обработки одномерного массива целочисленных данных (количество элементов массива ≤50). Функция (процедура) должна возвращать... http://www.cyberforum.ru/cpp-beginners/thread1233518.html
C++ Как работает функции подсчёта символов в строке
Раньше программировал на VB. Сейчас изучаю С++. Встретил в интернете эти функции подсчёта симолов в строке. С первой всё понятно. Перебираем символы пока не встретим '\0'. int strlen(char s){...
C++ Функция должна возвращать наименьший положительный элемент массива
Помогите, не могу написать этот клочек кода...голова кипит.. Есть постановка задания: Написать функцию (процедуру) с параметрами для обработки одномерного массива целочисленных данных (количество...
C++ Ошибка "Ascess violation" при выводе массива http://www.cyberforum.ru/cpp-beginners/thread1233508.html
В проекте есть две такие строчки: for(int L6x=0;L6x<=argcnt;L6x++){for(int L6y=0;L6y<argsize;L6y++){cout<<ComArgumentList;}cout<<endl;} for(int L7=0;L7<=argcnt;L7++)delete ComArgumentList;delete...
C++ После возвращении вектор пуст, хотя в dll size другая информация передаю вектор по ссылке в функцию dll он должен вставить элемент но после возвращении вектор пуст,хотя в dll size показывает правильно подробнее

Показать сообщение отдельно
Genn55
370 / 217 / 41
Регистрация: 26.12.2012
Сообщений: 713

Получить последовательность число цифр которой равно знаменателю, а сумма этих цифр -числителю - C++

25.07.2014, 01:23. Просмотров 182. Ответов 0
Метки (Все метки)

Доброго всем времени суток!Пожалуйста помогите сформировать вектор.

Дана правильная несократимая дробь нужно получить последовательность число цифр которой равно знаменателю,а сумма этих цифр -числителю.Напечатать в виде 1.1.2.1.2;
Вот мой вариант.
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
#include <iostream>
#include <stdlib.h>
#include <vector>
#include <algorithm>
#include <iterator>
#include <iomanip>
 
using namespace std;
 
int main()
{
 
    vector<int> Myvec;
    int ch,zn;
    int num = 1;//может быть любым
    cout << " Enter ch/ zn  ch < zn"<<"\n";
    cin >>ch>>zn;
    ch = zn * num + ch;
    int N = ch * zn;
//заполняем таблицу с шагом zn и записываем в вектор
    for (int i=0; i < N +3; i++)
     (i == 0)|| (i % zn == 0) ? Myvec.push_back(1) : Myvec.push_back(0);
    vector<int>::iterator jt  = Myvec.begin();
 //вычисляем число периодов и число 1 в каждом периоде
    for (int i = ch; i <=N; i += ch)
    {
        num = 0;
        while (jt != (Myvec.begin()+i))
            {
              num += *jt;
              ++jt;
            }
    Myvec.push_back(num);//записываем 1 период
    }
    Myvec.erase(Myvec.begin(),Myvec.end()- zn);//удаляем лишние элементы
    cout << " My vector "<<"\n\n";
        for (vector<int>::const_iterator it = Myvec.begin(); it != Myvec.end(); ++it)
    if (it < Myvec.end()-1)
       cout  <<*it<<".";
    else
       cout <<*it<<";   ";
 
return 0;
}
Он работает и дает верный результат,но далеко не лучший.Сокращение и пр. я опустил для сокращения кода.С вектором только начал разбираться.Кому не трудно подскажите как лучше сделать.С11++ у меня не поддерживается.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru