Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/163.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 计数变量为';在用重复的数字计算数字的程序中,t随着程序的迭代而增加_C++_Loops_Boolean - Fatal编程技术网

C++ 计数变量为';在用重复的数字计算数字的程序中,t随着程序的迭代而增加

C++ 计数变量为';在用重复的数字计算数字的程序中,t随着程序的迭代而增加,c++,loops,boolean,C++,Loops,Boolean,我正在做一个程序,它通过一个连续数字向量来识别有重复数字的数字。输出应删除这些带有重复数字的“无效”数字,并输出定义向量的范围a和范围b内没有重复数字的剩余“有效”数字的数量 我的变量计数跟踪向量中有多少个数字有重复的数字。例如,在数字8和12之间,应该有1个无效数字(即11)。我的计数变量输出几乎为0。(我使用的函数在单独的文件中) #包括 #包括 #包括“functions.h” int main(){ //变数 int a,b,i,count=0;//a&b输入,i用于迭代 int x=0

我正在做一个程序,它通过一个连续数字向量来识别有重复数字的数字。输出应删除这些带有重复数字的“无效”数字,并输出定义向量的范围a和范围b内没有重复数字的剩余“有效”数字的数量

我的变量计数跟踪向量中有多少个数字有重复的数字。例如,在数字8和12之间,应该有1个无效数字(即11)。我的计数变量输出几乎为0。(我使用的函数在单独的文件中)

#包括
#包括
#包括“functions.h”
int main(){
//变数
int a,b,i,count=0;//a&b输入,i用于迭代
int x=0;//数字出现计数的变量
//输入数字范围
std::cout a;
标准:cin>>b;
//使向量包含a和b之间的数字
std::南部的向量列表((b-a)+1);
int initialvalue=a;

虽然(i)您从不初始化
i
。它在顶部设置为等于0,然后在循环中有一个i++-我很困惑@johnymoponly
count
x
被分配到
0
。将代码更改为
inta=0,b=0,i=0,count=0;
。您还应该检查
0i
从0开始。显式地将其初始化为0。另外,为什么每次循环迭代调用
has_repeating_digits()
两次,并且调用
range_是有效的()
循环完成后两次?为什么在进入循环之前不调用
范围\u有效()
?还有,
计数\u数字\u出现次数()
是如何声明的,以及在哪里使用
x
#include <iostream>
#include <vector>
#include "functions.h"


int main() {
    //variables
    int a, b, i, count = 0; // a & b inputs, i for iterating
    int x = 0;  //variable for digit occurrence count

    //entering number range
    std::cout << "Enter numbers 0 < a <= b <= 10000: " << std::endl;
    std::cin >> a;
    std::cin >> b;

    //making a vector to contain numbers between a and b
    std::vector<int> listofnums((b-a)+1); 
    int initialvalue = a;
    while (i <= (b-a)) {  
        listofnums[i] = initialvalue;                                 


        //call the has repeating digits function
        has_repeating_digits(listofnums[i]);
        if (has_repeating_digits(listofnums[i]) == true) {  //counting nums w repeat digits
            count++;
        }

        //call the count digit occurrences function
        count_digit_occurrences(listofnums[i], x);

        initialvalue++; 
        i++; 
    }

    //Call the valid range function
    range_is_valid(a, b);
    if (range_is_valid(a, b)) {
        std::cout << "The range is invalid" << std::endl;
    }

    //call the count valid numbers function
    std::cout << count ;
    std::cout << "There are " << count_valid_numbers(a, b, count);
    std::cout << " valid numbers between " << a << " and " << b << std::endl;

    return 0;
}