array must be indexed
#1

I tried to appear the result but I got two errors at lines 15950 and 15954. The error was this:
pawn Код:
error 033: array must be indexed (variable "MathsResult")
pawn Код:
new
    string[128],
    MathsResult[MAX_PLAYERS],
    number = random(101),
    number2 = random(101),
    maths = random(2)
    ;
if(maths == 0) {
    format(string, sizeof(string), "%d + %d", number, number2);
    MathsResult = number + number2; //15950
}
else {
    format(string, sizeof(string), "%d - %d", number, number2);
    MathsResult = number - number2; //15954
}
What is wrong. I also add on MathsResult global variable.
Reply
#2

u Haven't Indexed MathsResult.Try Removing the MAX_PLAYERS after MathsResults
Reply
#3

By removing the global variable
pawn Код:
warning 204: symbol is assigned a value that is never used: "MathsResult"
Reply
#4

Why MAX_PLAYERS?

PHP код:
new
    
string[128],
    
MathsResult,
    
number random(101),
    
number2 random(101),
    
maths random(2)
    ;
if(
maths == 0) {
    
format(stringsizeof(string), "%d + %d"numbernumber2);
    
MathsResult number number2//15950
}
else {
    
format(stringsizeof(string), "%d - %d"numbernumber2);
    
MathsResult number number2//15954

If you use [MAX_PLAYERS] there it would be logical that on error lines you use MathsResult[playerid] or something. Above you added arrayed variable and down you lost array
Reply
#5

pawn Код:
#pragma unused MathsResult
Reply
#6

Well, I added
pawn Код:
#pragma unused MathsResult
and it compiles, but still doesn't show me the result.
Here is the picture
Reply
#7

Well, why are you declaring the variable MathsResult when you just assign to it some values, but never use it?
pawn Код:
new
    string[128],
    MathsResult, // you declare it
    number = random(101),
    number2 = random(101),
    maths = random(2)
    ;
   
if(maths == 0) {
    format(string, sizeof(string), "%d + %d", number, number2);
    MathsResult = number + number2;  // you assign a value to it
}
else {
    format(string, sizeof(string), "%d - %d", number, number2);
    MathsResult = number - number2;  // else assign another value to it
}

/* mathresult variable never used? */
EDIT: also see [MG]Dimi post
Reply
#8

And how are you expection it to show it when you dont have code for it?
PHP код:
new
        
string[128],
        
MathsResult,
        
number random(101),
        
number2 random(101),
        
maths random(2)
        ;
if(
maths == 0) {
    
MathsResult number number2//15950
        
format(stringsizeof(string), "%d + %d = %i"numbernumber2,MathsResult);       
}
else {
    
MathsResult number number2//15954
        
format(stringsizeof(string), "%d - %d = %i"numbernumber2,MathsResult);        

Reply
#9

pawn Код:
new
        string[128],
        MathsResult,
        number = random(101),
        number2 = random(101),
        maths = random(2)
        ;
if(maths == 0) {
    MathsResult = number + number2; //15950
        format(string, sizeof(string), "%d + %d = %i", number, number2,MathsResult);
        SendClientMessage(playerid, -1, string);
}
else {
    MathsResult = number - number2; //15954
        format(string, sizeof(string), "%d - %d = %i", number, number2,MathsResult);        
        SendClientMessage(playerid, -1, string);
}
Reply
#10

Quote:
Originally Posted by Pinguinn
Посмотреть сообщение
pawn Код:
new
        string[128],
        MathsResult,
        number = random(101),
        number2 = random(101),
        maths = random(2)
        ;
if(maths == 0) {
    MathsResult = number + number2; //15950
        format(string, sizeof(string), "%d + %d = %i", number, number2,MathsResult);
        SendClientMessage(playerid, -1, string);
}
else {
    MathsResult = number - number2; //15954
        format(string, sizeof(string), "%d - %d = %i", number, number2,MathsResult);        
        SendClientMessage(playerid, -1, string);
}
I think I didn't forgot SendClientMessage. I think he uses it soewhere else so your code would cause double message.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)