第六周作业

要求一:

 

要求二:

题目7-1 高速公路超速处罚

1.实验代码:

#include<stdio.h>
int main()
{
    float a,b,x;
    scanf("%f %f",&a,&b);
    x=((a-b)/b)*100;
    if (x<10)
    {
        printf("OK");}
    else if(50<=x)
    {
        printf("Exceed %.0f%%. License Revoked",x);
    }
    else if(10<=x<50)
    {
        printf("Exceed %.0f%%. Ticket 200",x);
    }
    
    return 0;
}

2.设计思路:(1)第一步:引入车速和限速两个变量a,b,以及关于超速的变量x;

                           第二步:输入车速和限速两个值;

                            第三步:判断x的大小,并根据题意来判断输出条件;

                            第四步:输出结果;

                    (2)流程图:

3.本题调试过程碰到的问题及解决办法:本题因为上周作业有过训练所以没什么问题。

4.本题PTA提交列表:

题目7-2 计算油费

1.实验代码:

#include<stdio.h>
int main()
{
    int a,b;
    char c;
    double d,p1,p2;
    d=0;
    scanf("%d %d %c",&a,&b,&c);
    switch(b)
    {
        case 90:p1=6.95;break;
        case 93:p1=7.44;break;
        case 97:p1=7.93;break;
    }
    switch(c)
    {
        case 'm':p2=0.95;break;
        case 'e':p2=0.97;break;
    }
    d=p1*p2*a;
    printf("%.2f",d);
    return 0;
} 

2.设计思路:(1)第一步:引入分别表示加油量以及汽油品种的变量a,b以及服务类型c,以及应付款d和不同类型下的油价及折扣p1,p2;

                           第二步:由题意可设置两个switch,分别来确定在不同条件下的油价及折扣;

                           第三步:输入变量a,b,c的值;

                           第四步:输出结果;                      

                   (2)流程图:

3.本题调试过程碰到的问题及解决办法:

        碰到的问题:①一开始对这个题的变量定义的函数出现了错误,导致在提交作业的时候总是出现提交部分正确的情况。

        解决办法:①起初我只是简单的认为自己是还不熟悉用“switch”函数,以为自己是函数用错,于是就用“if”函数又重新敲了一遍代码。可是最后还是发现出现了同样的错误,于是,我就去班级群里请教老师,同是也发现有很多和我出现相同问题的同学,最后由我们大家一起解决了这个问题,最后只是把“float”改成了“double”因为若用“float”在运行的时候有的结果会出现偏差。

4.本题PTA提交列表:

题目7-3 比较大小

1.实验代码:

#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    if(a>b&&a>c&&b>c)
    {
        printf("%d->%d->%d",c,b,a);
    }else if(a>b&&a>c&&c>b)
    {
        printf("%d->%d->%d",b,c,a);
    }else if(b>a&&b>c&&a>c)
    {
        printf("%d->%d->%d",c,a,b);
    }else if(b>a&&b>c&&c>a)
    {
        printf("%d->%d->%d",a,c,b);
    }else if(c>a&&c>b&&a>b)
    {
        printf("%d->%d->%d",b,a,c);
    }else if(c>=a&&c>=b&&b>=a)
    {
        printf("%d->%d->%d",a,b,c);
    }
    
    return 0;
 } 

2.设计思路:(1)第一步:引入三个变量a,b,c;

                           第二步:根据题意利用“if”函数写出框架;

                           第三步:输入变量a,b,c的值;

                           第四步:输出结果;

                  (2)流程图:

 

3.本题调试过程碰到问题及解决办法:

                      碰到的问题:①本题自我感觉较为简单,但是在自己实际敲代码的时候在上交作业的时候出现错误,是我自己没有考虑a,b,c三者全等的情况;

                 解决方法:②自己先是考虑了一下,但是仍很是糊涂,于是就去请教了室友,之后发现,只要在这个选择条件中随意一个条件加上“=”号就可以解决。

4.本题PTA提交列表:

题目7-4 两个数的简单计算器

1.实验代码:

#include<stdio.h>
int main()
{
  char a;
  int b,c,d;
  scanf("%d %c %d",&b,&a,&c);
  switch(a)
  {
  case'+':d=b+c;printf("%d",d);break;
  case'-':d=b-c;printf("%d",d);break;
  case'*':d=b*c;printf("%d",d);break;
  case'/':d=b/c;printf("%d",d);break;
  case'%':d=b%c;printf("%d",d);break;
  default:printf("ERROR");break;
  }
  return 0;
}

2.设计思路:(1)第一步:引入三个整数变量b,c,d代表两个所计算的数以及计算结果数,并引 入字符变量来代表所用到的运算符号;

                            第二步:根据题意,进行字符与整数之间的运算;

                            第三步:输入运算两个整数;

                             第四步:输出结果;

                    (2)流程图:

3.本题调试过程碰到问题及解决办法:

                      碰到的问题:①一开始忘了怎么引用字符函数“char”,不知道怎么表示字符;

                                         ②“char”函数中的字符引用一开始不知道在引用字符的时候要加单引号' ';

                       解决办法:①对于在使用函数的问题,一开始我是先查了一下课本,之后只是懂 得了怎么引用函数,但怎么懂使用,之后又请教了一下同学,之后 就会使用这个函数,但还是有些不熟悉,还需要勤加练习;

                                       ②对于加单引号的问题,我是去网上查的之后,才知道的;

4.本题PTA提交列表:

要求三:

 Git提交截图:

Git地址:https://git.coding.net/GBL/ZY.git

要求四

  个人总结:(1)①本周我学习了很多语句:“switch”语句、“for”语句;

                                 ②本周我还学习了“if”加强练习;

                        (2)难点:①对于由流程图转换成代码对我来说还很难;

                                          ②对由题目转换成循环或者转换成计算机所能接受的能力还很欠缺;

                                           ③对循环嵌套的运用很乱,不熟悉;

                 不明白的知识点:①对“break”和“continue”的区别还是迷惑;

                        (3)对目前的老师的上课形式我没啥意见;

要求五:

1.点评3个同学的本周作业:丰大为http://www.cnblogs.com/DavidPark/p/7800637.html

                                         班庆泽http://www.cnblogs.com/wsbqz/p/7822875.html

                                         顾家玮http://www.cnblogs.com/qq807443119/p/7822529.html

  邀请3名同学点评我的作业:丰大为http://www.cnblogs.com/DavidPark/p/7800637.html

                                           顾家玮http://www.cnblogs.com/qq807443119/p/7822529.html

                                           班庆泽http://www.cnblogs.com/wsbqz/p/7822875.html

2.表格:

折线图:

 

 

                                 

 

 

 

 

                          

 

转载于:https://www.cnblogs.com/gao628526/p/7801191.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好!改善深层神经网络的方法有很多,以下是一些常见的方法: 1. 使用更好的激活函数:传统的激活函数如Sigmoid、tanh等可能存在梯度消失或爆炸的问题。可以尝试使用ReLU、Leaky ReLU、ELU等激活函数,以减轻这些问题。 2. 使用批标准化(Batch Normalization):批标准化对网络的输入进行标准化,有助于加快网络的训练速度,并且可以缓解梯度问题,使得更深层的网络也能够训练得更好。 3. 使用残差连接(Residual Connections):残差连接可以帮助信息在网络中更好地流动,从而减轻梯度消失的问题。通过将某些层的输出与输入相加,可以使得网络更易于训练。 4. 使用更好的优化算法:传统的梯度下降算法如随机梯度下降(SGD)可能存在训练速度慢、易陷入局部最优等问题。可以尝试使用更高级的优化算法如Adam、RMSprop等,以加快模型的收敛速度。 5. 添加正则化:过拟合是深层神经网络常见的问题之一。可以通过添加正则化项如L1正则化、L2正则化等来限制模型的复杂度,防止过拟合的发生。 6. 数据增强:通过对训练数据进行一些随机的变换,如平移、旋转、缩放等,可以增加模型的泛化能力,防止过拟合。 这些方法只是改善深层神经网络的一部分,具体的选择和调整需要根据具体问题和数据集来进行。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值