逻辑问题:能否猜出各自从事哪一行

小王、小张、小赵三个人是好朋友,他们中间有一个下海经商、一个考上了重点大学、一个参军入伍了。
此外已知条件:小赵的年龄比士兵大;大学生的年龄比小张小;小王的年龄和大学生的年龄不一样。
请问这三个人当中,谁是经商、谁是大学生、谁是士兵?(最好就带有分析思路)

Person 小王,小张,小赵;

Occupation 商人 = {小王,小张,小赵},

                     学生 = {小张,小王,小赵},

                     军人 = {小张,小王,小赵};

==========================================

①Because (小赵.年龄>军人.年龄):

So 小赵!=军人,军人={小张,小王};

②Because(小张.年龄<学生.年龄):

So 小张!=大学生,学生={小王,小赵};

③Because (小王.年龄!=学生.年龄):

So 学生={小赵};

④Because(小张.年龄>学生.年龄):

So 小张.年龄 > 小赵.年龄;

⑤Because (小张.年龄>小赵.年龄>士兵.年龄):

So 小张!=士兵,小王=士兵,小张=商人;

==========================================

Result : 小赵=学生,小王=士兵,小张=商人;

 

小王、小张、小赵三个人是好朋友,他们中间有一个下海经商、一个考上了重点大学、一个参军入伍了。
此外已知条件:小赵的年龄比士兵大;大学生的年龄比小张小;小王的年龄和大学生的年龄不一样。
请问这三个人当中,谁是经商、谁是大学生、谁是士兵?(最好就带有分析思路)
小赵 = a
小张 = b
小王 = c

a.age>soldier.age 1
b.age>student.age 2
c.age!=student.age 3

a not in soldier 4
b not in student 5
c not in student 6

5 and 6:
  a in student 7

sub 7:
  a(student).age>soldier.age 8
  b.age>a(student)age 9
  c.age!=a(student)age 10

b not in soldier 11
4 and 11:
&nbsp&nbspc in soldier 12

sub 12:
  a(student).age>c(soldier).age 13
  b.age>a(student)age 14
  c(soldier).age!=a(student)age 15
13 and 14:
  b.age>a(student).age>c(soldier).age 16

结论:小赵是大学生,小王参军入伍,三个人中任一个人下海经商 if 一个人可以有两个职业 else 小张经商