• 【懒癌发作】收集各种懒癌发作时用程序写作业的程序


    updata:20170621

      好的,已经是准高一了,现在看起来太蠢了。。。

    --------------------------------------------------------------------------------------

    要真正的运用,程序一定是要来解决实际问题的——比如作业(懒就直说)

    蛤蛤蛤蛤蛤蛤这里就是黑の魔法作业程序的存放地啦

    当然了,现在只是初中生,开始解决繁杂作业的程序或许也就是用些基础部分解决问题。

    不过还是很期待之后能用上算法来解决作业啦,又是一个学习历程记录处咯!

    一、火柴三角推广

    ……对,没有代码,不过这是第一个我用程序解决作业的程序,只是可惜无法找到源代码了。只记得是用几根火柴摆几个三角形什么的,是八年级上期百练百胜里的题,自己还机(zuo)智(si)推广到一般情况。至少给第一次尝试留个纪念吧。

    二、平均数、方差计算

     1 #include <stdio.h>
     2 #include <string.h>
     3 
     4 float num[110] = {0};
     5 
     6 int main (){
     7 //    freopen ("a.in","r",stdin);
     8 //    freopen ("a.out","w",stdout);
     9     
    10     int i,n,j;
    11     float sum = 0,k;
    12     
    13     i = 0;
    14     n = 1;
    15     while (1){
    16         i++;
    17         scanf ("%f",num+i);
    18         sum+=num[i];    
    19         
    20         char c = getchar();
    21         if (c == '
    '){
    22             float ping = sum/i;
    23             printf ("第%d组的平均数为:%f
    ",n,ping);
    24             
    25             for (j = 1,k = 0;j<=i;j++)
    26                 k+=(num[j]-ping)*(num[j]-ping);
    27             printf ("         方差为:%f
    
    ",k/i);    
    28             
    29             sum = 0;    n++;    i = 0;
    30             memset(num,0,sizeof (num));
    31         }
    32         if (c == 'E'){
    33             return 0;
    34         }
    35     }
    36     
    37     return 0;
    38 }
    View Code

    对,特别简单,还毫无泛化设计,不过确实够用,也是帮了我很大忙的

    三、二次函数自配方

      1 #include <bits/stdc++.h>
      2 
      3 inline void swap(int &a,int &b){
      4     int t = a;a = b,b = t;
      5 }
      6 inline void Gcd (int &aa,int &bb){
      7     int a = aa,b = bb;
      8     if (a<b)
      9         swap (a,b);
     10     int r = a%b;
     11     
     12     while (r){
     13         a = b;
     14         b = r;
     15         r = a%b;
     16     }
     17     
     18     aa/=b;
     19     bb/=b;
     20 }
     21 
     22 void First (int a){
     23     if (abs(a) == 1){
     24         if (a == -1)
     25             std::cout<<'-';    
     26     }
     27     else
     28         std::cout<<a;
     29 }
     30 void MLPrint (bool f,int a,int b){
     31     if (f == false)
     32         std::cout<<'-';
     33     else
     34         std::cout<<'+'; 
     35     std::cout<<a;    
     36     if (b != 1)
     37         std::cout<<'/'<<b;
     38 }
     39 void Mid (int a,int b){
     40     int ha = b,hb = 2*a;
     41     bool hf = (ha*hb)>0;
     42     ha = abs(ha),hb = abs(hb);
     43     Gcd(ha,hb);
     44     
     45     std::cout<<"(x";
     46     MLPrint(hf,ha,hb);
     47     std::cout<<")^2";    
     48 }
     49 void Last (int a,int b,int c){
     50     int ka = 4*a*c-b*b,kb = 4*a;
     51     bool kf = (ka*kb)>0;
     52     ka = abs(ka),kb = abs(kb);
     53     Gcd (ka,kb);
     54     
     55     MLPrint (kf,ka,kb);
     56 }
     57 
     58 int main (){
     59 //    freopen ("a.in","r",stdin);
     60 //    freopen ("a.out","w",stdout);
     61     
     62     int a,b,c;
     63     while (std::cin>>a>>b>>c){
     64         std::cout<<"y = "; 
     65         if (abs(a) == 1){
     66             if (a == -1)
     67                 std::cout<<"-";
     68             std::cout<<"x^2";
     69         }
     70         else
     71             std::cout<<a<<"x^2";    
     72         if (abs(b) == 1){
     73             if (b == -1)
     74                 std::cout<<"-";
     75             std::cout<<"x";
     76         }
     77         else if (b!=0){
     78             if (b>1)
     79                 std::cout<<'+';
     80             std::cout<<b<<"x";
     81         }
     82         if (c!=0){
     83             if (c>0)
     84                 std::cout<<'+';
     85             std::cout<<c;
     86         }
     87         std::cout<<'
    ';
     88         std::cout<<"  = ";
     89         
     90         First (a);
     91         
     92         if (b == 0 && c == 0){
     93             std::cout<<'
    ';
     94             continue;
     95         }
     96         if (b == 0)
     97             std::cout<<"x2";
     98         else
     99             Mid (a,b);
    100         Last (a,b,c);
    101         
    102         std::cout<<'
    ';    
    103     }
    104     
    105     return 0;
    106 }
    View Code

    输入形如ax^2+bx+c的二次函数的a,b,c

    输出该二次函数的一般式与顶点式

    其实也很简单,可以当新手练手那种,不过承认确实写得繁杂了。不过一直秉承不影响不优化原则(就是懒),也懒得优化了。

  • 相关阅读:
    el-input 标签中密码的显示和隐藏
    java 使用RedisTemplate实现Redis事务
    mac 安装 Java 环境
    Snowflake 分布式UUID
    lsof 查看端口使用时刻
    nginx.pid" failed (2: No such file or directory)
    解决Redis之MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist
    Linux环境下 Jna 解决so依赖文件not found
    Ubuntu mysql 在线安装
    Linux中为什么执行自己的程序要在前面加./
  • 原文地址:https://www.cnblogs.com/Aeolus/p/5365565.html
Copyright © 2020-2023  润新知