博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

枚举类型和子界类型练习

Posted on 2010-10-07 11:17  桃子在路上  阅读(233)  评论(0编辑  收藏  举报

1.定义枚举类型monthtype表示十二个月,输入1-12中的某一个数,输出对应月份的英文缩写和表示写一个月的数字。如:

输入 6

输出 jun next month :7

 

program ex01;

type month=(jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec);

var m,n:month;

    k:1..12;

begin

  write('input number:');readln(k);

  case k of

    1:m:=jan;

    2:m:=feb;

    3:m:=mar;

    4:m:=apr;

    5:m:=may;

    6:m:=jun;

    7:m:=jul;

    8:m:=aug;

    9:m:=sep;

    10:m:=oct;

    11:m:=nov;

    12:m:=dec;

  end;

  if m=dec then n:=jan esle n:=succ(m);

  case m of

    jan:writeln('jan','next month:',ord(n)+1);

    feb:writeln('feb','next month:',ord(n)+1);

    mar:writeln('mar','next month:',ord(n)+1);

    apr:writeln('apr','next month:',ord(n)+1);

    may:writeln('may','next month:',ord(n)+1);

    jun:writeln('jun','next month:',ord(n)+1);

    jul:writeln('jul','next month:',ord(n)+1);

    aug:writeln('aug','next month:',ord(n)+1);

    sep:writeln('sep','next month:',ord(n)+1);

    oct:writeln('oct','next month:',ord(n)+1);

    nov:writeln('nov','next month:',ord(n)+1);

    dec:writeln('dec','next month:',ord(n)+1);

  end;

end.

 

2.由五个字符组成一个字符串,规定前四个字符为小写字母。第五个字符为数字,问有多少种排列方法。

 

program ex02;

type ch='a'..'z';d='0'..'9';

var k1,k2,k3,k4:ch;

    k5:d;

    n:longint;

begin

  n:=0;

  for k1:='a' to 'z' do

    for k2:='a' to 'z' do

      for k3:='a' to 'z' do

        for k4:='a' to 'z' do

          for k5:='0' to '9' do

            n:=n=1;

  writeln('total:',n);

end.