我正在爲設計遊戲的女兒做一個簡單的程序。我只想讓Mac拿出一個從1到6的隨機數,並將其與用戶的猜測進行比較,然後獲得用於確定玩家在棋盤遊戲中可以移動多少空間的差異。一切正常,除了程序生成的差異總是3.它正確生成隨機數並正確讀取用戶的輸入。這是代碼。我真的很感激幫助。我是新手,意識到可能有一個非常簡單的答案。我已經搜索和搜索,並沒有拿出一個解決方案。有一點它正確地產生了差異,但現在不是。非常感謝!我會爲新可可程序員欣賞幫助
//
// AstroGuessAppDelegate.h
//
// Created by Trent Evans on 3/7/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
int macPick;
int numberGuess;
int numberDiff;
@interface AstroGuessAppDelegate : NSObject {
IBOutlet NSWindow *window;
IBOutlet id moveResultLabel;
IBOutlet id thinkingLabel;
IBOutlet NSComboBox *numberGuessBox;
}
- (IBAction)compareNumbersAndSendResults:(id)sender;
- (IBAction)macThinkOfNumber:(id)sender;
@end
//
// AstroGuessAppDelegate.m
//
// Created by Trent Evans on 3/7/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "AstroGuessAppDelegate.h"
@implementation AstroGuessAppDelegate
- (IBAction)macThinkOfNumber:(id)sender {
macPick = (arc4random() % 6) + 1;
NSString *thinkingLabelText = [NSString stringWithFormat: @"Ok. I'm thinking of a number."];
[thinkingLabel setStringValue:thinkingLabelText];
}
- (IBAction)compareNumbersAndSendResults:(id)sender {
numberGuess = [numberGuessBox intValue];
numberDiff = macPick - numberGuess;
if (numberDiff<0) {
numberDiff = numberDiff * -1;
}
NSString *moveResultLabelText;
if (numberDiff=0) {
moveResultLabelText = [NSString stringWithFormat:@"My number was %i. Your number was %i. The difference is %i. \nBLAST OFF!\nMove forward 6 spaces", macPick, numberGuess, numberDiff];
}
if (numberDiff=1) {
moveResultLabelText = [NSString stringWithFormat:@"My number was %i. Your number was %i. The difference is %i. \nORBIT!\nMove forward 4 spaces", macPick, numberGuess, numberDiff];
}
if (numberDiff=2) {
moveResultLabelText = [NSString stringWithFormat:@"My number was %i. Your number was %i. The difference is %i. \nRE-ENTRY!\nMove forward 2 spaces", macPick, numberGuess, numberDiff];
}
if (numberDiff=3) {
moveResultLabelText = [NSString stringWithFormat:@"My number was %i. Your number was %i. The difference is %i. \nSPLASHDOWN!\nMove forward 1 space", macPick, numberGuess, numberDiff];
}
else {
moveResultLabelText = [NSString stringWithFormat:@"My number was %i. Your number was %i. The difference is %i. \nBLACK HOLE!\nSorry. You don't get to move.", macPick, numberGuess, numberDiff];
}
[moveResultLabel setStringValue:moveResultLabelText];
}
@end
感謝這麼多抽出時間來幫助菜鳥! – 2011-03-08 11:23:00