佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 2821|回复: 48

关于looping的问题

  [复制链接]
发表于 19-10-2011 04:10 PM | 显示全部楼层 |阅读模式
老师要我们写一个软件,是要用while loop来loop十次,然后每一次loop要输入一个号码。
为什么每次弄到的loop会一直loop下去我是一只很新很新的菜鸟啊
回复

使用道具 举报


ADVERTISEMENT

发表于 19-10-2011 04:42 PM | 显示全部楼层
你是什麼語言??還有你可以用一個variable 控制你的while loop 然後裡面就 input 你的數字啊。你post 你的 code 上來,我們才懂你的錯誤是在哪裡
回复

使用道具 举报

发表于 19-10-2011 05:30 PM | 显示全部楼层
注意你的 Operator,= 和 == 有分别的,也是 infinite loop 的主要元凶之一。
回复

使用道具 举报

 楼主| 发表于 19-10-2011 05:51 PM | 显示全部楼层
本帖最后由 可爱的医师小小 于 19-10-2011 05:53 PM 编辑
你是什麼語言??還有你可以用一個variable 控制你的while loop 然後裡面就 input 你的數字啊。你post 你的 ...
invisible 发表于 19-10-2011 04:42 PM
注意你的 Operator,= 和 == 有分别的,也是 infinite loop 的主要元凶之一。
geekman 发表于 19-10-2011 05:30 PM


我把我的coding放上来你们不要笑呀
才学没有几天罢了……
以下是我的题目。

1.Display an appropriate messageheader, e.g. “Start of Task B”

2.Write a whileloop that will iterate exactly 10 times.

3.In each iteration of the loop,prompt the user to enter an integer.

4.Within the body of the loop,sum up the total of these 10 integers.

5.Calculate the average of these10 integers.

6.After the loop, display anappropriate message which shows the total and the average of these 10 integers.


我暂时能够进行到这样而已,至于while loop我也还不是很懂,如果我要连续loop十次,condition是不是放(a>0),但是要怎样break他?
多多赐教!

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.         int a;
  6.         cout<< "Start Task B\n";
  7.         cout<<"Please input 10 integer\n";
  8.         cin>>a;
  9.         while (a>0){
  10.                 cout<<"Input another number";}
  11.         
  12.         return 0;
  13. }
复制代码
回复

使用道具 举报

发表于 19-10-2011 07:22 PM | 显示全部楼层

  1.     #include<iostream>
  2.     using namespace std;
  3.     int main()
  4.     {
  5.             int a, count = 0;

  6.             cout<< "Start Task B\n";
  7.             while (count < 10)
  8.             {
  9.                     cout<<"Please input an integer: \n";
  10.                     cin>>a;                        
  11.                     count++;
  12.             }                       
  13.             return 0;
  14.     }
复制代码
p/s:这是根据你目前的进度改的,其他部分请自行领悟。
回复

使用道具 举报

 楼主| 发表于 19-10-2011 07:45 PM | 显示全部楼层
本帖最后由 可爱的医师小小 于 19-10-2011 08:27 PM 编辑
p/s:这是根据你目前的进度改的,其他部分请自行领悟。
geekman 发表于 19-10-2011 07:22 PM

好的,谢谢你!
如果我还不清楚,会再上来发问
不好意思,才发现我的句子语病了
回复

使用道具 举报

Follow Us
 楼主| 发表于 20-10-2011 09:58 AM | 显示全部楼层
p/s:这是根据你目前的进度改的,其他部分请自行领悟。
geekman 发表于 19-10-2011 07:22 PM
要怎样从10次的loop里面拿不同的integer?
完全没有头绪,可以给一点hints吗?
回复

使用道具 举报

发表于 20-10-2011 11:14 AM | 显示全部楼层
你自己不是写了吗?
  1. cin>>a;
复制代码
回复

使用道具 举报


ADVERTISEMENT

发表于 20-10-2011 11:22 AM | 显示全部楼层
本帖最后由 mylover 于 20-10-2011 11:23 AM 编辑

回复 8# geekman

他的cin在loop外面,他要的因该是loop的时候type integer吧?如果是的话,就放进Loop里咯.ops..才看到你帮他改了嘻嘻 paiseh
回复

使用道具 举报

 楼主| 发表于 20-10-2011 11:31 AM | 显示全部楼层
你自己不是写了吗?
geekman 发表于 20-10-2011 11:14 AM
但是我loop 10次每一次都要输入不同的integer,
如果用
cin>>a,我只能够拿到一个integer,就是最后一次loop的integer。
如果我想要拿每一次我loop的integer来加起来,要怎样写?

我这样写:
  1. cin>>a>>b>>c>>d>>e>>f>>g>>h>>i>>j>>k
复制代码

但是行不通……
回复

使用道具 举报

 楼主| 发表于 20-10-2011 11:32 AM | 显示全部楼层
回复  geekman

他的cin在loop外面,他要的因该是loop的时候type integer吧?如果是的话,就放进Loop里咯 ...
mylover 发表于 20-10-2011 11:22 AM

我之前是弄到变成infinity loop,现在学会了用variable 来control。
多谢geekman 大大!
回复

使用道具 举报

发表于 20-10-2011 12:00 PM | 显示全部楼层
但是我loop 10次每一次都要输入不同的integer,
如果用
cin>>a,我只能够拿到一个integer,就是最后一次l ...
可爱的医师小小 发表于 20-10-2011 11:31 AM



    每次input都store進同一個variable當然只有最後一個value啦

弄多一個variable 來store總數咯
回复

使用道具 举报

 楼主| 发表于 20-10-2011 12:09 PM | 显示全部楼层
每次input都store進同一個variable當然只有最後一個value啦

弄多一個variable 來store總數咯: ...
vxion 发表于 20-10-2011 12:00 PM

我有想过,但是不知道要怎样写。
我试过这样写:
  1. cin>>a>>b>>c>>d>>e>>f>>g>>h>>i>>j
复制代码


但是,debug出来就
回复

使用道具 举报

发表于 20-10-2011 12:37 PM | 显示全部楼层
唔。。。再这么下去,就变成我把你的功课做完了。。。这对你没帮助的啊。

  1. int main()
  2. {
  3.     int a, count = 0, sum = 0;

  4.     cout<< "Start Task B\n";
  5.     while (count < 10)
  6.     {
  7.         cout<<"Please input an integer: \n";
  8.         cin>>a;                        
  9.         count++;
  10.         sum += a;
  11.     }                  
  12.     //print the value of sum here     
  13.     return 0;
  14. }
复制代码
回复

使用道具 举报

 楼主| 发表于 20-10-2011 12:52 PM | 显示全部楼层
唔。。。再这么下去,就变成我把你的功课做完了。。。这对你没帮助的啊。
geekman 发表于 20-10-2011 12:37 PM

不算啦,哈哈!
如果要search这类型的资料,keyword是什么?
还有一个问题要问,如果一个program写好了,能run了,是不是就算完成了呢?
回复

使用道具 举报

 楼主| 发表于 20-10-2011 01:00 PM | 显示全部楼层
唔。。。再这么下去,就变成我把你的功课做完了。。。这对你没帮助的啊。
geekman 发表于 20-10-2011 12:37 PM
成功了,谢谢你!
可以解释为什么用sum+会有这个效果吗?
回复

使用道具 举报


ADVERTISEMENT

发表于 20-10-2011 01:16 PM | 显示全部楼层
如果要search这类型的资料,keyword是什么?

什么资料?请明示。

还有一个问题要问,如果一个program写好了,能run了,是不是就算完成了呢?

那就看你是否认为一个有bug的program也算是完成品了啰。

可以解释为什么用sum+会有这个效果吗?

sum += a; 相当于 sum = sum + a;
一开始sum = 0, sum = sum + a1
接下去sum += a2,sum = a1 + a2。。。
累计下去,以此类推。
回复

使用道具 举报

 楼主| 发表于 20-10-2011 02:37 PM | 显示全部楼层
什么资料?请明示。


那就看你是否认为一个有bug的program也算是完成品了啰。


sum += a; 相当于 ...
geekman 发表于 20-10-2011 01:16 PM
编程的,比较详细的资料,因为search到的都是很基本的,看了不懂。
此外有什么编程教学的书籍介绍呢?
有没有一些bugs的例子呢?
谢谢你!明白了很多
回复

使用道具 举报

 楼主| 发表于 20-10-2011 02:46 PM | 显示全部楼层
  1.     #include<iostream>
  2.     using namespace std;
  3.     int main()
  4.     {
  5.             int a,sum=0, count = 0, num=1;

  6.             cout<< "This program will automatic calculate the average of 10 numbers you input.\n";
  7.             while (count <10,num<=10)
  8.             {
  9.                     cout<<"\n"<<num<<".Please input a number:";
  10.                                         ++num;
  11.                     cin>>a;                                                       
  12.                                         count++;
  13.                                         sum+=a;
  14.                   
  15.             }   
  16.                         cout<<"\nThe average of the number you input is:"<<(sum)/2;
  17.             fflush(stdin);
  18.                         getchar();
  19.                         return 0;
  20.                        
  21.     }
复制代码
成功了,谢谢大家的帮助。
学习了不少
回复

使用道具 举报

发表于 20-10-2011 03:00 PM | 显示全部楼层
你错了!10个数目的平均怎么是/2呢?
num也是没必要的,你可以用count+1。虽然现在的电脑都有数GB的RAM,但是要养成珍惜资源的习惯啊!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 23-11-2025 09:04 PM , Processed in 0.232155 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表