2016-04-13 5 views
1

Ich erstelle einen grundlegenden Wettrechner auf Xcode mit Swift, und ich bin fest, wie Variablen in der View-Controller zu multiplizieren oder sogar zu behandeln. Ich habe es geschafft, den (sehr einfachen) App-Algorithmus mit C++ in einer Befehlszeile zu erstellen, aber ich möchte es in eine App verwandeln, damit ich es mit meinen Freunden teilen kann.Verwenden und Multiplizieren von Variablen in View Controller

Ich zeige Ihnen den C++ Code, so können Sie verstehen, was ich versuche zu tun:

#include <cmath> 

double odd1; 
double odd2; 
double imput1; 
double imput2; 
double output1; 
double output2; 
double totalprofit; 

int main() { 
{ 
    std::cout << "Insert the smaller odds\n"; 
    std::cin >> odd1; 
} 

{ 
    std::cout << "Insert the larger odds\n"; 
    std::cin >> odd2; 
} 

{ 
    std::cout << "Insert bet for first instance\n"; 
    std::cin >> imput1; 
} 

{ 
    output1 = (odd1*imput1) - imput1; 

    output2 = imput1; 

    imput2 = output2/(odd2-1); 
} 
{ 
    std::cout << "Second bet has to be \n" << imput2 << std::endl; 

} 

{ 

    totalprofit = output1 - imput2; 

    std::cout << "Total profit is: \n" << totalprofit << std::endl; 

} 

{return '0'; 
} 
} 

So habe ich eine grundlegende Benutzeroberfläche mit einem Formular Möglichkeit Gebrauch gemacht, als Mittel der Werte erhalten imput1

aber das tat es nicht - vom Benutzer, und ich habe diejenigen meinen Ansicht-Controller

@IBOutlet var odds1: NSFormCell! 
@IBOutlet var odds2: NSFormCell! 
@IBOutlet var imput1: NSFormCell! 
@IBOutlet var imput2: NSFormCell! 
@IBOutlet var output1: NSFormCell! 
@IBOutlet var output2: NSFormCell! 

ich habe versucht, nur Variablen zu multiplizieren wie var output1 = odds1 * imput1 verknüpft Arbeit. Ich habe auch das Gleiche versucht, habe sie aber jeweils als Doppel deklariert (da sie eine Dezimalzahl haben), aber das hat nicht funktioniert.

Ich habe dann versucht diese es

func output1(odds1: NSFormCell, imput1: NSFormCell) -> NSFormCell { 

RETURN odds1*imput1 - imput1; 

} 

var output1 = imput1; 

var imput2 = profit2/(odd2-1); 

aber ich erhalte Fehlermeldungen wie sie in eine Funktion zu setzen und einfach nur kann ich ich habe etwas Dummes getan sagen, aber ich nicht wirklich tun weiß was.

Hier ist der vollständige Code:

import Cocoa 
import AppKit 

class ViewController: NSViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
} 

override var representedObject: AnyObject? { 
    didSet { 
    // Update the view, if already loaded. 
    } 
} 


@IBOutlet var odds1: NSFormCell! 
@IBOutlet var odds2: NSFormCell! 
@IBOutlet var imput1: NSFormCell! 
@IBOutlet var imput2: NSFormCell! 
@IBOutlet var output1: NSFormCell! 
@IBOutlet var output2: NSFormCell! 

let odds1 = NSNumberFormatter().numberFromString(imput1)?.doubleValue; 



} 

Antwort

0

In Ihrem C++ Code Ihre Variablen sind bereits in numerischer Datentyp - Doppel.

Der Wert, den Sie von NSFormCell erhalten, ist String.

Sie müssen den Wert der Zeichenfolge in einen numerischen Datentyp abrufen.

let odds1 = NSNumberFormatter().numberFromString(imput1.text)?.doubleValue 

bearbeiten nach Code aktualisiert:

Der Code, den Sie hat darin eine Reihe von konzeptionellen Probleme geteilt. Der beste Weg, ich kann Ihnen helfen, diese zu überwinden, ist, Sie in Richtung eines Beispiels eines grundlegenden Taschenrechners in swift zu zeigen.

http://www.ioscreator.com/tutorials/calculator-tutorial-in-ios8-with-swift

+0

Vielen Dank, ich diese Technik verwendet, aber es kam mit einer Fehlermeldung hervorgeht, dass ‚Instanz Mitglied imput1 nicht auf Typ Viewcontroller verwendet werden können‘ –

+0

können Sie den Controller alle anzeigen Code kopieren, so dass wir kann sehen, was Sie tun –

+0

natürlich, vielen Dank dafür übrigens –

Verwandte Themen