坚持这个请帮助 [英] Stuck on this please help

查看:72
本文介绍了坚持这个请帮助的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

定义一个函数,它将m和n整数作为输入并在m和n之间打印奇数



 vector<  int > oddNumbers( int  m, int  n)
{


}





我的尝试:



 vector< int> oddNumbers( int  l, int  r)

{
oddNumbers 。推回();
cout<< 输入第二个数字;
oddNumbers.push_back();

for unsigned int i = l + 1; i< r; i ++)
{
if (i%2!= 0
oddNumbers.push_back()
cin>> i;
}

解决方案

如果你必须填写建议的功能,即

Quote:

vector< int> oddNumbers(int m,int n)

{

}





然后

 vector<  int > oddNumbers( int  m, int  n)
{
vector< int> v;
if (m% 2 == 0 )++ m;

while (m< = n)
{
v.push_back(m);
m + = 2 ;
}
return v;
}


你不需要这样的向量作为返回。代码应该很简单:

  void  printOddNumbers( int  l, int  r)
{
for (< span class =code-keyword> int i = l; i< r; i ++)
{
if ( i% 2 == 0
{
cout<<一世;
}
}
}





该代码仅在r>湖如果l<可以考虑做什么错误处理或修复。 r。


建议:使用适当的缩进来查看代码结构,它有助于阅读并可以突出显示一些问题。参见 cin

 vector< int> oddNumbers( int  l, int  r)

{
oddNumbers 。推回();
cout<< 输入第二个数字;
oddNumbers.push_back();

for unsigned int i = l + 1; i< r; i ++)
{
if (i%2!= 0
oddNumbers.push_back()
cin>> i;
}
}





代码中的问题:

 vector< int> oddNumbers( int  l, int  r)

{
< span class =code-comment> // 你在哪里定义/声明了oddNumbers?
oddNumbers.push_back(); // 你必须知道想要推回的价值
cout<< < span class =code-string> 输入第二个数字; // 第二个数字?
oddNumbers.push_back(); // 你必须知道想要推回的价值

< span class =code-keyword> for ( unsigned int i = l + 1 ; i< r; i ++)
{
if (i%2!= 0
oddNumbers.push_back() // a;在这里缺失
// 你要输出我
// 因为没有使用{},cin不在测试中
cin>> ;一世;
}
// 您的代码不会返回任何内容。
}


Define a function that takes m and n integers as input and print odd numbers between m and n

vector < int > oddNumbers(int m,int n)
{


}



What I have tried:

vector <int> oddNumbers(int l,int r)
    
        {
        oddNumbers.push_back();
    cout<<"Enter second number";
            oddNumbers.push_back();

        for(unsigned int i=l+1;i<r;i++)
        {
            if (i%2!=0)
                oddNumbers.push_back()
                cin>>i;
        }

解决方案

If you have to fill the proposed function, namely

Quote:

vector < int > oddNumbers(int m,int n)
{
}



Then

vector < int > oddNumbers(int m,int n)
{
  vector<int> v;
  if ( m % 2 == 0) ++m;

  while ( m <= n )
  {
    v.push_back(m);
    m+=2;
  }
  return  v;
}


You dont need such vector as return. The code should really be easy:

void printOddNumbers(int l, int r)
{
 for( int i = l; i < r; i++)
 {
   if( i % 2 == 0 ) 
   {
     cout << i;
   }
 }
}



The code only work if r > l. Think what error handling or "healing" to do, if l < r.


Advice: use proper indentation to see code structure, it helps reading and can highlight some problems. See the cin.

vector <int> oddNumbers(int l,int r)

{
	oddNumbers.push_back();
	cout<<"Enter second number";
	oddNumbers.push_back();

	for(unsigned int i=l+1;i<r;i++)
	{
		if (i%2!=0)
			oddNumbers.push_back()
		cin>>i;
	}
}



Problems in your code:

vector <int> oddNumbers(int l,int r)

{
	// where did you defined/declared oddNumbers ?
	oddNumbers.push_back(); // you have to tell what value to want to push back
	cout<<"Enter second number"; // which second number ?
	oddNumbers.push_back(); // you have to tell what value to want to push back

	for(unsigned int i=l+1;i<r;i++)
	{
		if (i%2!=0)
			oddNumbers.push_back() // a ; is missing here
		// you want to output i
		// because of not using {}, the cin is not in test
		cin>>i;
	}
	// you code do not return anything.
}


这篇关于坚持这个请帮助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆