Assignment 3

(1)编程序,用以确定员工的工资总额。对于员工每周工作的前40小时,公司按正常工作时间标准支付。超出40小时的工作时间按正常工作时间标准的1.5倍付酬。

程序代码:

#include <iostream>

using namespace std;

int main()

{

       int dwHour = 0;

       int price = 100;

       float salary, rat;

       cout << "Please input theworker's working time :" <<endl;

       cin >> dwHour ;

       if(dwHour>0&&dwHour<=40)

       {

             rat = 1;

             salary = rat * price * dwHour;

       }

       else if (dwHour>40)

       {

             rat = 1.5;

             salary = 4000 + (rat * price * (dwHour-40));

       }

       cout << "The worker'ssalary is " << salary << "$ per week" << endl;

       return 0;

}

(2)回文是指正向读和反向读都一样的一段数字和文字。例如,下面的5位整数都是回文:12321,55555,35553和11611。编写一个程序,读入一个5位整数,判断它是否是回文。

 

提示:

n         运用除法和模运算符将数的每一位分离为单独的数。

n         将每一位数值存储到各自的变量中。

n         比较第1位和第5位,以及第2位和第4位,如果相等,则为回文。

程序代码:

#include <iostream>

using namespace std;

int main()

{

       int dwNumber = 0;

       int dwA = 0, dwB = 0, dwC =0, dwD = 0, dwE = 0;

       cout << "请输入一个五位整数数字:" << endl;

      cin >> dwNumber;

      while(dwNumber< 10000 || dwNumber > 100000)

      {

          cout <<"您输入的不是五位数字,请重新输入:"<< endl;

          cin >> dwNumber;

      }

       dwA = dwNumber/10000;

       dwB = dwNumber%10000/1000;

       dwC =dwNumber%10000%1000/100;

       dwD =dwNumber%10000%1000%100/10;

       dwE =dwNumber%10000%1000%100%10;

        if ((dwA != dwE)||(dwB !=dwD))

              {

                     cout<<"这个数字不是回文的"<<endl;

              }

       else

              {

                     cout<<"这个数字是回文的" << endl;

              }

     

       return 0;

}

3)输入一行字符,分别统计出英文字母、空格、数字和其他字符的个数。

//(3)输入一行字符,分别统计出英文字母、空格、数字和其他字符的个数。

#include<iostream>

using namespace std;

int main()

{

       char chC = ' ';

       int dwLetter = 0,dwNum = 0,dwSpace =0,dwOthers = 0;

       cout << "请输入一行字符:" << endl;

       while ((chC = getchar())!='\n')

       {

              if (chC>='a'&&chC<='z'||chC >='A'&&chC <='Z')

             {

                    dwLetter++;

             }

             else if (chC >= '0'&&chC <= '9')

             {

                    dwNum ++;

             }

             else if (chC == ' ')

             {

                    dwSpace ++;

             }

             else

                    dwOthers ++;

       }

       cout << "输入的字符串中:" ;

       cout << "英文字母的个数是:" << dwLetter << endl;

       cout << "数字的个数是:" << dwNum << endl;

       cout << "空格的个数是:" << dwSpace << endl;

       cout << "其他字符的个数是:" << dwOthers << endl;

       return 0;

 

}

 

4)表示直角三角形的三条边的三个整数,称为勾股弦。找出所有边长(分别为side1,side2和hppotenuse)小于500的勾股弦。提示运用三重for嵌套循环尝试各种可能情况(蛮力法)

//4)表示直角三角形的三条边的三个整数,称为勾股弦。

//找出所有边长(分别为side1,side2和hppotenuse)小于500的勾股弦。

//提示运用三重for嵌套循环尝试各种可能情况(蛮力法)

#include<iostream>

using namespace std;

int main(int argc, char *argv[])

{

       int dwSide1 = 0,dwSide2 =0,dwHppotenusse = 0;

       cout << "勾股弦数有:" << endl;

       for(dwHppotenusse = 5;dwHppotenusse<= 500;dwHppotenusse ++)

       for(dwSide2 = 4;dwSide2 <500;dwSide2 ++)

             for (dwSide1 = 3;dwSide1 < 500;dwSide1 ++ )

             {

                    if (dwHppotenusse * dwHppotenusse == dwSide1 * dwSide1 + dwSide2 * dwSide2)

                    {

                           cout << dwHppotenusse << ' ' << dwSide1 <<' ' <<dwSide2 << endl;

                    }

             }

             cout << endl;

       return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值