Solved

a case statement with an array of shortint

Posted on 2003-10-25
8
240 Views
Last Modified: 2010-04-16
Hi,
i have an array of 4 shortint
2, 5, 7, 9

and i have to check combination of those 4 shortint of should i proceed with an case statement
i would like to do something like this

Case Digits Of
2, 4, 6, 7: WriteLN ...;
5, 9, 7, 8: ... ;
9, 4, 1, 5; ... ;
end;

how should i do ???
thanks in advance
0
Comment
Question by:Elvis1
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
8 Comments
 
LVL 100

Expert Comment

by:mlmcc
ID: 9621791
I don't understand your problem?

Are you trying to do something for each set of 4 digits?

mlmcc
0
 

Author Comment

by:Elvis1
ID: 9622686
yes something like that
i just want to comment the digits following their combination
it's to make a blackjack game;
first the player try to guess the 4 digits
then the computer generates 4 random numbers between 0 and 10
and the program should compare the to arrays of 4 numbers
that's why the combination is important

i need a way to compare the 2 sets of arrays
i tought to use a case statement but i don't know how to place condition with a whole array

could you help me ?
if you have some more question just tell me i'm paying pretty much time on this question

thanks in advance bye
elvis
0
 
LVL 2

Assisted Solution

by:MrT-RSI
MrT-RSI earned 20 total points
ID: 9622972
What you could do is 'compose' a unique number of the 4 digits and test the case statement for this number. Example:

var
  A,B,C,D : shortint;
  N : longint;

N := A shl 24 or B shl 16 or C shl 8 or D;
case N of
  ...

It's easiest to show this with hex numbers, so for your example this becomes:

Case N Of
  $02040607: WriteLN ...;
  $05090708: ... ;
  $09040105; ... ;
end;

- Rob.
0
[Webinar] Code, Load, and Grow

Managing multiple websites, servers, applications, and security on a daily basis? Join us for a webinar on May 25th to learn how to simplify administration and management of virtual hosts for IT admins, create a secure environment, and deploy code more effectively and frequently.

 

Author Comment

by:Elvis1
ID: 9623477
intresting remark
but i don't know that much of pascal
but what if for example
i transform my digit-array in Char-array en then just put them together wouldn't it be as succesfull as your method but more simple ???
i don't know something like

FOR i:=1 TO 4 DO
 begin
  Temp:=Random(10);
  Digits[i]:=temp;
 end;

FOR j:=1 TO 4 DO
Number:=Digits[j]+Number;

Case Number OF
 4586: ...

????

thanks in advance
0
 

Author Comment

by:Elvis1
ID: 9623856
FORGET ABOUT WHAT I SAID !
i found lots and lots of mistake in it
i found something else

a snip of declaration would be

Var
i, Temp1, temp2:ShortInt;
digit:Array[1..4] Of Char;

a snip of my code to generate my 4 digits between 0 and 10 and to put them into Characters

FOR i:=1 TO 4 DO
 Begin
 Temp1:=Random(10);       {let take for Temp1 = 5}
 Temp2:=Ord(Temp1);       {temp2 should be 53 according to the ASCII table}
  Digit[i]:=Chr(Temp2);       {Digit[i] should be 5 again but a Character }
 End;
 
and now to get a little String

Function Combination:String;
Var j:ShortInt;
Begin
 Combination:=0;
 FOR j:=1 TO 4 DO
  Combination:=Combination+Digit[i];
End;
 

and then i can handle with my combination ???
isn't that something who could be possible ???
i know it's not the way you would solve it but i'm only 15 years old and i just starting with programming

thanks in advance
Elvis
0
 
LVL 100

Accepted Solution

by:
mlmcc earned 30 total points
ID: 9624079
Depending on the Pascal you are using there may be a VAL procedure to convert the string to number.
Var
    Num1 : Integer;
    Error : Integer;

Val(Combination,Num1,Error);

Num1 will have the value of the string
Error will indicate the position of a bad digit.  0 indicates it was a numeric string.

  Case Num1 of
     1234:
     2468:

etc

mlmcc
0
 

Author Comment

by:Elvis1
ID: 9625447
thanks to both of you bye
Elvis
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 9630819
Glad I could help

mlmcc
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article describes how to import an Outlook PST file to Office 365 using a third party product to avoid Microsoft's Azure command line tool, saving you time.
Dramatic changes are revolutionizing how we build and use technology. Every company is automating, digitizing, and modernizing operations. We need a better, more connected way to work together as teams so we can harness the insights from our system…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question