zoukankan      html  css  js  c++  java
  • C++第7周任务1求两数正差值

    项目1:分支结构程序设计体验

      (1)阅读课件中“给两个数,求两数中的大者”例子,结合对课堂讲授内容的理解,仔细领会让计算机进行判断,然后根据不同情况进行处理的方法。
      (2)我们要解决的问题如下,上机前在作业(草稿)本上编程完成下面的工作:
      问题:给定两个正整数,求出两数的正差值并输出。
      样例输入 样例输出
      7 10 3
      12 7 5
      提示:“正差值”意味着无论这两数孰大孰小,输出的差值为非负数。可以自行加入些“请输入……”,“……是:”之类的提示,让你的程序有“友好”的用户界面。

      (3)发表博文作为上机报告,建议标题:第7周任务1-求两数正差值。


    【参考解答】

      由于重在提前体验,要考察的是同学们的模仿能力。在读懂课堂上所讲程序,以及掌握思路的情况下,即使对语法的要求不甚明了,也能“照猫画虎”地做出来。

      与课堂中使用的“给两个数,求两数中的大者”例子相对应,给出几种解法供同学们参考。

      切记参考要点:

    if (任务能够完成)
    	读参考解答,并和自己的做法进行对照;
    else
    	读完参考解答,关闭页面,独立编写自己的程序;


      解答一:根据比较结果,直接输出大值减小值的差

    #include <iostream>		
    using namespace std;	
    int main( )
    {
    	int a,b;	
    	cout<<"请输入a、b的值:"; 
    	cin>>a>>b;
    	cout<<a<<" 和 "<<b<< " 之间的正差值是: ";
    	if(a>b)
    		cout<<a-b;		 
    	else
    		cout<<b-a; 	
    	cout<<"\n";	
    	return 0;	
    }

      解答二:用另一个变量,记录下大值减小值的结果后再输出

    #include <iostream>		
    using namespace std;	
    int main( )
    {
    	int a,b,c;	
    	cout<<"请输入a、b的值:"; 
    	cin>>a>>b;
    	if(a>b)
    		c=a-b; 
    	else 
    		c=b-a;
    	cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<c<<"\n";
    	return 0;	
    }
    

      解答三:先通过交换,保证a>=b后,输出a-b

    #include <iostream>		
    using namespace std;	
    int main( )
    {
    	int a,b,t;	
    	cout<<"请输入a、b的值:"; 
    	cin>>a>>b;
    	if(a<b) 	//如果a<b,交换a、b的值,使a≥b成立
    	{
    		t=a;
    		a=b;
    		b=t;
    	}
    	cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<a-b<<"\n";
    	return 0;	
    }
    

      解答四:先算出两数的差,如果是负值,求出其相反数并输出

    #include <iostream>		
    using namespace std;	
    int main( )
    {
    	int a,b,c;	
    	cout<<"请输入a、b的值:"; 
    	cin>>a>>b;
    	c=a-b;
    	if(c<0) 	//如果这个差值是负的,c赋值为c的相反数-c
    		c=-c;
    	cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<c<<"\n";
    	return 0;	
    }
    

    【结语】

      同一任务,可以有不同解法,不同程序员会写出不同程序。

      先有思路,程序自然写出。


  • 相关阅读:
    Linq 入门系列 [Take,Skip,TakeWhile,SkipWhile]篇
    SqlString 引发的思考
    DLINQ
    Wrf 格式播放器
    仙剑奇侠传4序列号
    Asp.Net程序性能 浅谈
    Linq 扩展函数的应用
    正则表达式积累
    ajax 之取消服务器任务[转]
    Linq 演变的过程(delegate => Lamb => Linq)
  • 原文地址:https://www.cnblogs.com/hehe520/p/6142685.html
Copyright © 2011-2022 走看看