|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
1200+ fellow developers rate and compare features of the top IDEs, like Visual Studio, Eclipse, RAD, Delphi and others, across 13 categories. Enjoy this FREE Download of the IDE User Satisfaction Study by Evans Data Corporation. Download Now!
|
|
#1
|
|||
|
|||
|
Pascal problems.
Hi guys,
Firstly I would just like to say that I'm not looking for people to do my programming for me just looking for some help and guidance. At school we have a project were we have to design a voting system, one part of the voting system is to check that the votes entered are not the same as each other. Trying to solve this I used if statements to compare the values. Code:
if value1 = (value2) OR (value3) OR (value4) then This seems to partially work when all of the values are the same as each other. But when only 2 values are the same the if statement fails to carry out what it would carry out like it does when all of the values are the same. I was just wondering if anyone would know how I could make it compare all of the values but would be able to carry out the if statement even if there are only say 2 out of the 4 values which are the same. Thanks a bunch. ![]() |
|
#2
|
|||||
|
|||||
|
Actually, this probably shouldn't have compiled at all. AFAIK, Pascal comparison operators are supposed to only work on logical values, which the second and third clauses wouldn't be unless value3 and value4 are Booleans.
There really isn't any way to compare a single value to a group of values in Pascal (or most other languages I can think of), at least not for arbitrary values. It is possible to use a set membership in this manner with the union operator if you are checking them against a fixed group of values known at compile time, but in general, comparisons are always one-to-one. Without more details of the program (and possibly redesigning some of your data structures), I'd say you'll need to write the whole thing out: Pascal Code:
I realize this is a bit of a hassle, but for a small group of comparisons like this, it's not all that problematic. As an aside, in most cases you want to use more descriptive variable names than 'valuen' and so on. Names like those are just too easy to confuse with each other. If they really do form a sequence or group, then it probably makes more sense to put them together into an array: Code:
FooArray: array [1..4] or FooType; I should add that using an array may make a difference in the code above: it would be possible to use a loop of some sort to structure the test somehow. For the case given that would be overkill, but for longer comparisons against a large group of values, it can be very useful. Of course, if the code you gave was just an example, and your actual variable names are more reasonable, feel free to ignore this.
__________________
Rev First Speaker Schol-R-LEA;2 JAM LCF ELF KoR KCO BiWM TGIF #define KINSEY (rand() % 7) λ Scheme is the Red Pill Scheme in Short • Understanding the C/C++ Preprocessor Taming Python • A Highly Opinionated Review of Programming Languages for the Novice, v1.1 FOR SALE: One ShapeSystem 2300 CMD, extensively modified for human use. Includes s/w for anthro, transgender, sex-appeal enhance, & Gillian Anderson and Jason D. Poit clone forms. Some wear. $4500 obo. tverres@et.ins.gov |
|
#3
|
||||
|
||||
|
You could also use the in operator.
Code:
If value1 in [value2, value3, value4] then begin end
__________________
Up the Irons What Would Jimi Do? Smash amps. Burn guitar. Take the groupies home. "Death Before Dishonour, my Friends!!" - Bruce D ickinson, Iron Maiden Aug 20, 2005 @ OzzFest Down with Sharon Osbourne Puzzle of the Month solved by sizeablegrin, etienne141 and L7Sqr, superior C/C++ programmers of the month |
|
#4
|
|||
|
|||
|
Thanks guys, I will have a little mess around and see what comes up.
|
![]() |
| Viewing: Dev Shed Forums > Programming Languages - More > Other Programming Languages > Pascal problems. |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|