一、问题及代码 :
/*
* 文件名称:Test4.cpp
* 作 者:胡嘉威
* 完成日期:2017 年 3 月 6 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分: 在键盘输入x的值(要求为实型),根据所给的公式计算并输出y的值。
* 输入描述:8
* 问题描述:从键盘输入x的值(要求为实型),根据公式计算并输出y的值。
* 程序输出:y的值为:3
* 问题分析:要根据输入的x的值计算出y的值,必须把x的定义域进行划分,并限定在某一定义域内只能用唯一的一个公式,从而达到对于r任意的一个x都仅有一个唯一确定的y与之相对应的效果
* 算法设计:用else及if语句将x的不同定义域划分为若干个,根据输入的x的值判定运用那个公式,最后将结果输出
*/
#include <iostream>
#include<cmath>
using namespace std;
int main()
{
int x,y;
cout<<"请输入x的值:";
cin>>x;
if(x<2)
{
y=x;
}
else
if(2<=x&&x<6)
{
y=x*x+1;
}
else
if(6<x&&x<10)
{
y=sqrt(x+1);
}
else
y=1/(x+1);
cout<<"y的值为:"<<y;
return 0;
}
二、运行结果 :
三、心得体会 :
这个程序不难,顺利完成!
四、知识点总结 :
主要是 if 选择语句的应用,再注意点细节方面的问题就可以了
一、问题及代码
/* 文件名称:drfsyedwh.cpp
* 作 者:胡嘉威
* 完成日期: 2017 年 3 月 1 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:编辑程序输出1000-10000之间,个位和千位相等的所有质数
* 输入描述:无
* 问题描述:输出1000-10000之间,个位和千位相等的所有质数
* 程序输出:所输出数过多,请看运行结果
* 问题分析:应采用for循环连续嵌套的形式,用if语句根据相应条件加以筛选
* 算法设计: 用多重for循环限定“1000-10000之间”“质数”等必要条件,在其中再通过if语句进行细化和进一步的讨论
*/#include <iostream>
using namespace std;
int main()
{
int i,j=0,k,z=0,tell=0;
for(i=1000; i<=10000; i++)
{
z=i%10;
j=i/1000%10;
for(k=2; k<i/2; k++)
{
if(i%k==0)
{
tell=0;
break;
}
else if((i%k!=0)&&(j==z))
{
tell=1;
}
}
if(tell==1)
{
cout<<i<<" ";
tell=0;
}
}
return 0;
}
二、运行结果:
三、心得体会
中途因为起初的考虑不太成熟出现了几次错误,边思考边调试程序,终于完成了;写程序要有理性,要有缜密的思维,更要有善于从错误里头发现错误的原因,并不断加以改正,最终达到想要的结果,我要更加细心,更加耐心,使自己编译程序时能更加得心应手,减少出错的可能性。
四、知识点总结
for循环是常用的处理多重复性繁琐工作的重要结构,与if语句结合起来后能自动筛选符合条件对象的,从而有效地减轻工作的枯燥性,保证结果的正确性,节省时间,显著提高工作效率