问一道关于编写程序的应用题(高一数学)

打电话收费。不超过3分钟收0.2元,超过的部分每分钟0.1元,不足一分钟按一分钟来计,设计一个算法。我不知道不足一分钟的按一分钟来算的话应该怎样取整?不如3.5分钟怎样自... 打电话收费。不超过3分钟收0.2元,超过的部分每分钟0.1元,不足一分钟按一分钟来计,设计一个算法。
我不知道不足一分钟的按一分钟来算的话应该怎样取整?
不如3.5分钟怎样自动换成4分钟

回答满意就追加15分
只是高一啊,请不要写些太复杂的程序,我只知道一些基本的内容
展开
囧尽天下
2011-08-16 · TA获得超过581个赞
知道小有建树答主
回答量:291
采纳率:50%
帮助的人:108万
展开全部
#include<stdio.h>
void main()
{
int a,b,i; //a为单价,b为总价,取整型
if (a<=3).
{b=0.2*3};
else
{i=a/1; //向下取整 ,下面算法需要+1
b=(i+1-3)*0.1+3*0.2;
}
printf(%d,b); // 输出总价
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
紫灵斗圣
2011-08-16 · TA获得超过461个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:146万
展开全部
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main(){
double time,cost;
int t;
scanf("%lf",&time);
t=ceil(time); //ceil是上取整函数
cost=0.0;
if(t<=3) cost=0.2;
if(t>3) cost=0.2+0.1*(t-3);
printf("%.1lf\n",cost);
return 0;
}
追问
我还没学过这么复杂的算法啊,没有简单易懂点的吗?
追答
这个没什么算法吧,就求一个分段函数的值,你画个图看看
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小巴动漫
2011-08-20 · TA获得超过166个赞
知道小有建树答主
回答量:264
采纳率:0%
帮助的人:116万
展开全部
高一应该是VB语言,所以应该用int函数,例int(3.5)=3,你用变量时只要再加个1就是不足一分钟按一分钟算了,其他的应该没问题了吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
艳子飞莺
2011-08-16 · TA获得超过297个赞
知道小有建树答主
回答量:184
采纳率:0%
帮助的人:160万
展开全部
不知道你用的是什么语言,一般来说,每个语言都会有ceil()函数,可以采用。可能需要引用。最简单的,可以用int(x+0.999999)来实现,至于几个9就看你的精度要求了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式