重新定义名称取决于用户输入的变量

时间:2013-09-15 18:07:00

标签: pascal freepascal

我有一些由数字排序的变量,如ex1,ex2,ex3等(整数);我想计算用户输入一个数字的次数,如果输入'1',程序会向ex1添加+1,如果2是enteres,则程序会向ex2添加+1,所以on(我不能使用数组,因为它在excersise中被禁止)。例如,如果我要求用户输入1到15之间的15个数字,并且我想计算每个数字输入的次数,我想的代码就像

for i:=1 to 15 do
    read(number);
    if number = i then
    Begin
        exi := exi + 1;
    End

显然这没用。是否有可能重新定义变量做类似的事情?。

1 个答案:

答案 0 :(得分:1)

如果您根本不能使用数组,那么您只有几个选择。

案例陈述

for i := 1 to 15 do
begin
  Read(number);
  case number of
    1: ex1 := ex1 + number;
    2: ex2 := ex2 + number;
    // rest of possible values and variables
  else
    // Handle number that doesn't have a variable
  end;
end;

if..else statements

for i := 1 to 15 do
begin
  Read(number);
  if number = 1 then
    ex1 := ex1 + number
  else if number = 2 then
    ex2 := ex2 + number
  else if   // rest of possible values and variables

  else     // Handle number that doesn't have a variable

  end;
end;