657. 选择练习1
#include
using namespace std;
int main()
{
int a, b, c, d;
cin >> a >> b >> c >> d;
if (b > c && d > a && c + d > a + b && c > 0 && d > 0 && a % 2 == 0)
cout << "Valores aceitos" << endl;
else
cout << "Valores nao aceitos" << endl;
return 0;
}
658. 一元二次方程公式
#include
#include
#include
using namespace std;
int main()
{
double a, b, c;
cin >> a >> b >> c;
double delta = b * b - 4 * a * c;
if (delta < 0 || !a) cout << "Impossivel calcular" << endl;
else
{
printf("R1 = %.5lfn", (- b + sqrt(delta)) / (2 * a));
printf("R2 = %.5lfn", (- b - sqrt(delta)) / (2 * a));
}
return 0;
}
659. 区间
#include
using namespace std;
int main()
{
double x;
cin >> x;
if (x >= 0 && x <= 25) cout << "Intervalo [0,25]" << endl;
else if (x > 25 && x <= 50) cout << "Intervalo (25,50]" << endl;
else if (x > 50 && x <= 75) cout << "Intervalo (50,75]" << endl;
else if (x > 75 && x <= 100) cout << "Intervalo (75,100]" << endl;
else cout << "Fora de intervalo" << endl;
return 0;
}
660. 零食
#include
int main()
{
int x, y;
double p[] = {0, 4, 4.5, 5, 2, 1.5};
scanf("%d %d", &x, &y);
printf("Total: R$ %.2lfn", p[x] * y);
return 0;
}
661. 平均数3
#include
#include
using namespace std;
int main()
{
double n1, n2, n3, n4, x, y, z;
cin >> n1 >> n2 >> n3 >> n4;
x = 0.2 * n1 + 0.3 * n2 + 0.4 * n3 + 0.1 * n4;
printf("Media: %.1lfn", x);
if (x >= 7) puts("Aluno aprovado.");
else if (x >= 5)
{
puts("Aluno em exame.");
cin >> y;
printf("Nota do exame: %.1lfn", y);
z = (x + y) / 2;
if (z >= 5) puts("Aluno aprovado.");
else puts("Aluno reprovado.");
printf("Media final: %.1lfn", z);
}
else puts("Aluno reprovado.");
return 0;
}
662. 点的坐标
#include
using namespace std;
int main()
{
double x, y;
cin >> x >> y;
if (x > 0 && y > 0) cout << "Q1" << endl;
else if (x > 0 && y < 0) cout << "Q4" << endl;
else if (x < 0 && y > 0) cout << "Q2" << endl;
else if (x < 0 && y < 0) cout << "Q3" << endl;
else if (y) cout << "Eixo Y" << endl;
else if (x) cout << "Eixo X" << endl;
else cout << "Origem" << endl;
return 0;
}
663. 简单排序
#include
#include
using namespace std;
int main()
{
int a[3], b[3];
for (int i = 0 ; i < 3; i ++ )
{
cin >> a[i];
b[i] = a[i];
}
sort(a, a + 3);
for (int i = 0 ; i < 3; i ++ ) cout << a[i] << endl;
cout << endl;
for (int i = 0 ; i < 3; i ++ ) cout << b[i] << endl;
return 0;
}
664. 三角形
#include
#include
using namespace std;
int main()
{
double a, b, c;
cin >> a >> b >> c;
if (a + b > c && a + c > b && b + c > a)
printf("Perimetro = %.1lfn", a + b + c);
else
printf("Area = %.1lfn", (a + b) * c / 2);
return 0;
}
665. 倍数
#include
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
if (a % b == 0 || b % a == 0)
cout << "Sao Multiplos" << endl;
else
cout << "Nao sao Multiplos" << endl;
return 0;
}
666. 三角形类型
#include
#include
#include
using namespace std;
int main()
{
double a, b, c;
cin >> a >> b >> c;
if (a < b) swap(a, b);
if (a < c) swap(a, c);
if (b < c) swap(b, c);
if (a >= b + c) cout << "NAO FORMA TRIANGULO" << endl;
else
{
if (a * a == b * b + c * c) cout << "TRIANGULO RETANGULO" << endl;
else if (a * a > b * b + c * c) cout << "TRIANGULO OBTUSANGULO" << endl;
else if (a * a < b * b + c * c) cout << "TRIANGULO ACUTANGULO" << endl;
if (a == b && b == c) cout << "TRIANGULO EQUILATERO" << endl;
else if(a == b || b == c) cout << "TRIANGULO ISOSCELES" << endl;
}
return 0;
}
667. 游戏时间
#include
#include
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
cout << "O JOGO DUROU "<< (b - a <= 0 ? b - a + 24 : b - a) << " HORA(S)" << endl;
return 0;
}
668. 游戏时间2
#include
using namespace std;
int main()
{
int a, b, c, d;
cin >> a >> b >> c >> d;
int t = (c * 60 + d) - (a * 60 + b);
if (t <= 0) t += 24 * 60;
cout << "O JOGO DUROU " << t / 60 << " HORA(S) E " << t % 60 << " MINUTO(S)" << endl;
return 0;
}
669. 加薪
#include
#include
using namespace std;
int main()
{
double salary;
int rate;
cin >> salary;
if (salary <= 400) rate = 15;
else if (salary <= 800) rate = 12;
else if (salary <= 1200) rate = 10;
else if (salary <= 2000) rate = 7;
else rate = 4;
printf("Novo salario: %.2lfn", salary + salary * rate / 100);
printf("Reajuste ganho: %.2lfn", salary * rate / 100);
printf("Em percentual: %d %%n", rate);
return 0;
}
670. 动物
#include
#include
using namespace std;
int main ()
{
string s1, s2, s3;
cin >> s1 >> s2 >> s3;
if (s1 == "vertebrado")
{
if (s2 == "ave")
{
if (s3 == "carnivoro") cout << "aguia" << endl;
else cout << "pomba" << endl;
}
else
{
if (s3 == "onivoro") cout << "homem" << endl;
else cout << "vaca" << endl;
}
}
else
{
if (s2 == "inseto")
{
if (s3 == "hematofago") cout << "pulga" << endl;
else cout << "lagarta" << endl;
}
else
{
if (s3 == "hematofago") cout << "sanguessuga" << endl;
else cout << "minhoca" << endl;
}
}
return 0;
}
671. DDD
#include
using namespace std;
int main()
{
int num;
cin >> num;
switch (num)
{
case 61:
cout << "Brasilia" << endl;
break;
case 71:
cout << "Salvador" << endl;
break;
case 11:
cout << "Sao Paulo" << endl;
break;
case 21:
cout << "Rio de Janeiro" << endl;
break;
case 32:
cout << "Juiz de Fora" << endl;
break;
case 19:
cout << "Campinas" << endl;
break;
case 27:
cout << "Vitoria" << endl;
break;
case 31:
cout << "Belo Horizonte" << endl;
break;
default:
cout << "DDD nao cadastrado" << endl;
break;
}
return 0;
}
672. 税
#include
#include
using namespace std;
int main()
{
double salary, tax = 0;
cin >> salary;
if (salary > 4500)
{
tax += (salary - 4500) * 0.28;
salary = 4500;
}
if (salary > 3000)
{
tax += (salary - 3000) * 0.18;
salary = 3000;
}
if (salary > 2000)
{
tax += (salary - 2000) * 0.08;
salary = 2000;
}
if (!tax) printf("Isenton");
else printf("R$ %.2lfn", tax);
return 0;
}
其他知识点
- 格式化输出
- 整型
- %nd 占用n个字符(不足时前面补空格)
- %-nd 占用n个字符(不足时后面补空格)
- %0nd 占用n个字符(不足时前面补0)
- 浮点型
- %n.mlf 占用n个字符保留m位小数(不足时前面补空格)
- %-n.mlf 占用n个字符保留m位小数(不足时后面补空格)
- %0n.mlf 占用n个字符保留m位小数(不足时前面补0)