当前位置:首页 » 编程软件 » 编程逻辑题

编程逻辑题

发布时间: 2022-11-01 13:30:51

① 一道关于逻辑推理的C语言编程

这个得用枚举法做:把各种可能的情况都考虑到,并对全部可能结果逐一进行判断,过滤掉那些不符合要求的,保留符合要求的结果,这种方法叫枚举算法(Enumerative algorithm)
设定冠军为X(1<=X<=6)
甲乙丙丁四个人的话可以用逻辑表达式表示如下:
甲:X=1 OR X=2
乙:X<>3
丙:X<=3
丁:X>=4

② 一道C语言逻辑题,怎么编写

A选手说:B第二,我第三;
B选手说:我第二,E第四;
C选手说:我第一,D第二;
D选手说:C最后,我第三;
E选手说:我第四,A第一;
=========================
假如A说的前半句是对的.则.B第二.A第一.E不是第四.D第二.矛盾..所以
A的后半句是对的.
所以A第三,E第四.C第五.D第二.B第一.

呵呵.我不懂怎么编程...

java 逻辑编程题

这个问题,首先应该是在纯数学方面去找出算法之后,再把这个算法换成程序,楼主可以试试去数学区或一些专门的数学论坛找找这个问题的答案先.本人数学比较差,实在想不出这个算法.

如果不做数学上的简化的话,程序可以这样写
int count=0;
for(int i1=1;i1<=99;i1++)
for(int i2=1;i2<=99;i2++)
for(int i3=0;i3<=99;i3++)
for(int i4=0;i4<=99;i4++)
.......//表示省略,一直写100个for,除了前两个是从1开始,其他都是从0开始
for(int i100=0;i100<=99;i100++)
if(i1>=i2&&i2>=i3&&a3>=i4&&...&&i99>=i100&&
i1+i2+i3+..+i100==100)
count++;
System.out.println(count);

打印出来的应该就是你要的答案了.当然这个程序只是理论上可行的程序,这个程序的时间复杂度的数量级在n的100次方,真正这样计算的话,不知道要算多少年才能算出答案.说不定要算到地球毁灭的那一天......

所以这个问题的难度在纯数学层面的,数学太差帮不上忙,没办法.

④ 编程解逻辑学问题

只有一个程序文件。

思路简介:对问题的分析理解为,每一句话都缩小了可能的取值集合,通过

三句话排除其它各种可能最终确定了生日。
这里用一个矩阵来表示,矩阵的行列分别与可能取值中的月与日对应,且各

自都是按升序排列的。例如,若最终答案为3-3(本题的答案是2-0),则就是

12月5日(当然这里只是举个例子)。
通过三句话,每次排除相应的行列即去除不符合的月份和日子。

#include <cstdlib>
#include <iostream>
#define M 5
#define N 7

using namespace std;

void initmn_r(short [][N]);
void initmn_c(short [][N]);
void displaymn(short [][N]);

int main(int argc, char *argv[])
{
short mn[M][N] = {{0,0,1,1,0,1,0},
{0,0,1,0,1,0,0},
{1,0,0,1,0,0,0},
{1,1,0,0,0,1,0},
{0,0,0,0,0,0,-1}};
bool flag = false; //the flag for the answer's existence
//initialize:
//init for column
initmn_c(mn);
//init for row
initmn_r(mn);
//the judge rule 1:小明说:如果我不知道的话,小强肯定也不知道
for(int j=0;j<N-1;j++)
if(mn[M-1][j]==1){ //找到相应的列,以便排除掉相应的行.
for(int i=0;i<M-1;i++)
if(mn[i][j] == 1) //确定要排除的行
for(int k=0;k<N;k++)
mn[i][k] = 0;
mn[M-1][j] = 0;
}
//the judge rule 2:小强说:本来我也不知道,但是现在我知道了
//first init again
initmn_c(mn);
for(int j=0;j<N-1;j++)
if(mn[M-1][j]>1){ //找到要排除的列
for(int i=0;i<M;i++)
mn[i][j] = 0;
}
//the judge rule 3:小明说:哦,那我也知道了
//first init again:
initmn_r(mn);
for(int i=0;i<M-1;i++)
if(mn[i][N-1]==1){
flag = true;
for(int j=0;j<N-1;j++)
if(mn[i][j]==1){
cout << "We've found it!\n";
cout << "The Result is :\n" << i << '-'<<j << endl;

}
}
if(flag==false)
cout << "No answer!\n";
system("PAUSE");
return EXIT_SUCCESS;
}

void initmn_c(short pmn[][N])
{
for(int k=0;k<N-1;k++)
pmn[M-1][k] = 0;
for(int j=0;j<N-1;j++)
for(int i=0;i<M-1;i++)
pmn[M-1][j]+=pmn[i][j];
}

void initmn_r(short pmn[][N])
{
for(int k=0;k<M-1;k++)
pmn[k][N-1] = 0;
for(int i=0;i<M-1;i++)
for(int j=0;j<N-1;j++)
pmn[i][N-1]+=pmn[i][j];
}

void displaymn(short pmn[][N])
{
cout << "Now Matrix is:\n";
for(int i=0;i<M;i++)
{
for(int j=0;j<N;j++)
cout << pmn[i][j] << '\t';
cout << endl;
}
cout << endl;
}

这个方法对于类似的判断准则都是可取的。如果你还有不明白的地方,可以给我发邮件[email protected]

⑤ java编程逻辑性题

给你一个比较神奇的题Int i=0;a=(i++)+(i++)+(i++);b=(++i)+(++i)+(++i);System.out.print("a="+a);System.out.print("b="+b);猜猜a和b的值,在不同的编译器和不同的电脑上试试,你也可以使用不同的语言试试。很神奇哦。 再给你一个逻辑思维比较强的题求13的13次方的后四位。 还有个题int a=5int b=7要求不能使用第三个变量,交换a和b的值。 提示:第一题和底层有关,所以对于初学者来说没有必要弄清楚,纯属娱乐第二题和计算机数学有关,搞会了对以后的发展大有帮助。第三题是纯逻辑题,说难也不难,就要看你是怎么理解变量的了。 如果能搞懂这三道题 你的逻辑也就差不多了吧。

⑥ c加加编程比赛名次逻辑推理题

#include <stdio.h>

int main(void)
{
const char players[6] = {'A', 'B', 'C', 'D', 'E', 'F'};
int w; /* w = winner */
int jia, yi, bing, ding;

for (w=0; w<6; w++) {
jia = (w==1 || w==2);
yi = (w != 3);
bing = (w!=4 && w!=5 && w!=6);
ding = (w==4 || w==5 || w==6);
/* one of them is right */
if (jia+yi+bing+ding == 1) printf("Winner is %c\n", players[w]);
}

return 0;
}

⑦ 一道编程逻辑题,求大神解答是否有算法

1号明显错……
应该是8192号~
通解:n个人的队列,应该排在第m位,m满足m=2^k(k为使m<=n的最大整数),这个可以证明的,这里就不浪费篇幅了
满意望采纳谢谢!!!

热点内容
我的世界哪五个服务器被炸了 发布:2025-05-15 10:36:16 浏览:993
ehcache存储对象 发布:2025-05-15 10:35:31 浏览:527
搭建虚拟电脑的服务器 发布:2025-05-15 10:29:31 浏览:269
湖人双核配置哪个最好 发布:2025-05-15 10:09:48 浏览:979
手机热点密码怎么查看 发布:2025-05-15 09:54:47 浏览:108
生意发力云存储 发布:2025-05-15 09:54:45 浏览:616
编写一个shell脚本添加用户 发布:2025-05-15 09:54:43 浏览:505
数据库查看表命令 发布:2025-05-15 09:52:27 浏览:914
p30是不是自带方舟编译器 发布:2025-05-15 09:51:48 浏览:599
追击世界房间密码是多少 发布:2025-05-15 09:51:46 浏览:995