
c++题目,过程详细
c++问题求教!1输入一列图形(字母金字塔)aababc.....................ab....yz2有一堆100多个的零件,若三个三个的数,剩2个,若五个...
c++问题求教!
1 输入一列图形(字母金字塔)
a
a b
a b c
.....................
a b ....y z
2 有一堆100多个的零件,若三个三个的数,剩2个,若五个五个数,剩3个,如果七个七个数,剩五个,这一堆零件至少有多少
3 编写一个程序,验证角谷猜想。角谷猜想:对于任意大于1的自然数n,若n为奇数,则将n变为3*n+1,否则将n变为n的一半,经过若干次这样变化,一定会使n变为1.打印出每次变化后的n。
4 哥德巴赫猜想(任何充分大的偶数都可以有两个素数之和表示)。将4~100中的所有偶数分别用两个素数之和表示。输出为:
4=2+2
6=3+3
......
100=3+97
求大神解答(c++)( '-ωก̀ 展开
1 输入一列图形(字母金字塔)
a
a b
a b c
.....................
a b ....y z
2 有一堆100多个的零件,若三个三个的数,剩2个,若五个五个数,剩3个,如果七个七个数,剩五个,这一堆零件至少有多少
3 编写一个程序,验证角谷猜想。角谷猜想:对于任意大于1的自然数n,若n为奇数,则将n变为3*n+1,否则将n变为n的一半,经过若干次这样变化,一定会使n变为1.打印出每次变化后的n。
4 哥德巴赫猜想(任何充分大的偶数都可以有两个素数之和表示)。将4~100中的所有偶数分别用两个素数之和表示。输出为:
4=2+2
6=3+3
......
100=3+97
求大神解答(c++)( '-ωก̀ 展开
2个回答
展开全部
#include <iostream>
using namespace std;
//prime
int IsPrime(int x)
{
for (int i = 2; i < x; ++i)
{
if (x % i == 0)
return 0;
}
return 1;
}
//Menu
void menu()
{
system("cls");
cout << "Quit. Ctrl + C" << endl;
cout << "1. Answer for question 1." << endl;
cout << "2. Answer for question 2." << endl;
cout << "3. Answer for question 3." << endl;
cout << "4. Answer for question 4." << endl;
}
//Q. 1
void FirstQuestion()
{
int row = 0, col = 0;
for ( ; row <= 26; ++row)
{
for (col = 0; col <= 26 - row; ++col)
printf(" ");
for (col = 0; col < row; ++col)
printf("%c ", 'A'+col);
printf("\n");
}
}
//Q. 2
void SecondQuestion()
{
cout << "Valid num: " << endl;
int min = 199;
for (int i = 199; i > 0; --i)
{
if (i % 3 == 2 &&
i % 5 == 3 &&
i % 7 == 5)
{
cout << "count: " << i << endl;
if (min > i)
min = i;
}
}
cout << "The minnest num of heap: " << min << endl;
}
//Q. 3
void ThirdQuestion()
{
//题目要求验证,就随便取一个自然数验证,取100
int n = 100;
int count = 0;
cout << "n= " << n << endl;
while (n != 1)
{
if (n % 2 == 1)
{
n = 3*n + 1;
}
else
{
n = n / 2;
}
cout << count++ << ". n: " << n << endl;
}
}
//Q. 4
void FouthQuestion()
{
int m = 0, n = 0;
for (int num = 4; num <= 100; num += 2)
{
int i = 2, j = num - 2;
m = n = 0;
while (i < j)
{
if (IsPrime(i) && IsPrime(j))
{
m = i; n = j;
break;
}
++i; --j;
}
if (m != 0 && n != 0)
cout << num << "= " << m << " + " << n << endl;
}
}
typedef void VOID_FN_PTR();
int main()
{
int choose = 0;
VOID_FN_PTR *fn_ptr[] = { FirstQuestion, SecondQuestion, ThirdQuestion, FouthQuestion };
do
{
menu();
cout << "choose ?: " << endl;
cin >> choose;
if (choose > 4 || choose < 1)
continue;
fn_ptr[choose-1]();
system("pause");
} while (true);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询