zoukankan      html  css  js  c++  java
  • 第四周作业

    一,pta

    1.7-1

    #include<stdio.h>

    int main()
    {
     float a,b;
     
     scanf("%f",&a);
     
     if(a==0){
      printf("f(0.0) = 0.0");
     }else{
      b=1.0f/a;
      printf("f(%.1f) = %.1f",a,b);
     }
    }

    设计思路

    第一步:因为有除法,所以选择了float型输入x值(a),结果(b);

    第二部:因为是个分段函数,选择用if语句,先是判断a是否等于0,如果是就直接输出f(0.0) = 0.0就OK,否则进入else,并且算出结果并输出。

    遇到问题

     在输出框中不知道如何输出()以为像"/"一样要用两个//,不过发现不用。

    运行结果

     

    2.7-2

    实验代码

    #include<stdio.h>
    
    int main()
    {
        //int a,b;
        float c,a,b;
        scanf("%f %f",&a,&b);
        
        if(b==0){
            printf("%.0f/%.0f=Error",a,b);
        }else if(b<0){
            c=a/b;
            printf("%.0f/(%.0f)=%.2f",a,b,c);
        }else{
            c=a/b;
            printf("%.0f/%.0f=%.2f",a,b,c);
        }
    }

    设计思路

    第一步:因为要做除法,选择了float型输入,并且按要求输入除数和被除数a,b。

    第二步:因为要判断分母是否为零和其正负,所以选择在一个if语句中再套一个语句。

    第三步:if判断如果分母等于0输出error;再如果分母小于0要在分母加();最后就是分母大于0正常输出就OK。

    遇到问题

    最开始除数和被除数用的int。不过发现题目要求不期待用int型。

     运行结果

    3.7-6

    实验代码

    
    
    #include<stdio.h>
    
    int main()
    {
        float a,b;
        
        scanf("%f",&a);
        
        if(a>50){
            b=50*0.53+(a-50)*0.58;
            printf("cost = %.2f",b);
        }else if(a<0){
            printf("Invalid Value!");
        }else{
            b=a*0.53;
            printf("cost = %.2f",b);
        }
    }
    
    

    设计思路

    第一步:因为电价存在小数点,并且要相乘,所以选择float型,并且输入用电量。

    第二步:判断用电量在那个范围内,同上题一样,只是计算上稍微麻烦一些。

    遇到问题

    这题只要全部用float型,最后结果保留小数就差不多了。

    运行结果 

     

    4.7-7

    实验代码

    #include<stdio.h>
    
    int main()
    {
    	float a,c,d;
    	int b;
    	
    	scanf("%f %d",&a,&b);
    	
    	if(a<=3){
    		c=10;
    	}else if(a<=10){
    		c=10+(a-3)*2;
    	}else{
    		c=10+7*2+(a-10)*3;
    	}
    	
    	d=(b/5)*2+0.5+c;
    
    	printf("%d",(int)d);
    }
    

    设计思路

    第一步:这题要算路程钱和等时两部分钱最后相加。因为车程含小数所以车程,路程钱,总车费用float型输入。等时为整数所以用了int型。输入车程和等时。

    第二步:判断路程并算出路程的钱(同前两题相似)。

    第三步:算出等时的钱加上路程钱再加上0.5可以保证转化成int型可用来四舍五入。最后输出转换成int型输出。

    遇到问题

     这题比较纠结人的就是要四舍五入,可以在输出框把float型改为int型并且加0.5就OK。

    运行结果 

    二.git

    https://git.coding.net/DavidPark/123.git

    提交列表

     三.学习进度条

    ·时间

    代码行数

    时间(min

    博客字数

    博客时间min

    知识点

    10.21

    200

    120

    0

    0

     pta

    10.22

    210

    90

    100

    60

    pta 

    10.23

    210

    90

    100

    30

     if else

    10.24

    120

    80

    50

    10

     运算符的判断

    10.25

    150

    70

    50

    10

     Git

    10.26

    150

    60

    50

    10

     pow,sqrt

    10.27

    100

    50

    50

    10

    switch语句 

    10.28

    100

    50

    50

    10

    switch语句 

    四.总结和互评

    总结

    每周的pta最开始都会让自己感到头疼,需要自己查询各种资料,本周也不例外,本周pta中三角形的判断有点难,其中double的输入一直都没有想到,还有=、==总是弄混,&&,||也比较难区分。并且经过了这一周对if语句的熟练度提高。

    互评

    于耀松: http://www.cnblogs.com/jsjyys/p/7709233.html

    史泽文:http://www.cnblogs.com/shilcz/p/7732077.html

    张国庆:http://www.cnblogs.com/zgq947/p/7746392.html

  • 相关阅读:
    解决:hdfs: org.apache.hadoop.security.AccessControlException(Permission denied)
    新的开始
    死锁问题------------------------INSERT ... ON DUPLICATE KEY UPDATE*(转)
    hql- 使用like的小坑①
    数美面试检讨
    问题:计算foldRight(1)(_-_) 与foldLeft(1)(_-_)值不一样
    学习笔记之流文件操作01(拷贝文件)
    学习笔记之正则表达式
    数据结构之单链表
    (转)消息中间件(二)MQ使用场景
  • 原文地址:https://www.cnblogs.com/DavidPark/p/7707156.html
Copyright © 2011-2022 走看看