0
저는 이진 계산기 앱을 만들었습니다. 숫자에는 두 개의 변수가 있습니다. previousNumber 및 numberOnScreen. 아이디어는 이진수를 십진수로 변환하고, 계산을 수행하고, 답을 다시 변환하는 것입니다.두 번째 변수는 첫 번째 값을 취합니다
내가 선택 첫 번째 (previousNumber) 번호는 10100
var numberOnScreen:Int = 0;
var previousNumber:Int = 0;
var doingMath = false
var operation = 0;
var decimal = 0;
var decimal1 = 0;
var binary:String = ""
var binary1:String = ""
@IBOutlet weak var label: UILabel!
@IBAction func Numbers(_ sender: UIButton) {
if doingMath == true
{
label.text = String(sender.tag-1)
numberOnScreen = Int(label.text!)!
doingMath = false
}
else
{
label.text = label.text! + String(sender.tag-1)
numberOnScreen = Int(label.text!)!
}
}
@IBAction func buttons(_ sender: UIButton) {
if label.text != "" && sender.tag != 6 && sender.tag != 8
{
previousNumber = Int(label.text!)!
binary = "\(previousNumber)"
decimal = Int(binary, radix: 2)!
binary1 = "\(numberOnScreen)"
decimal1 = Int(binary1, radix: 2)!
operation = sender.tag
doingMath = true;
}
else if sender.tag == 8
{
if operation == 3 //adding
{
print(previousNumber, numberOnScreen, decimal, decimal1)
그것은 인쇄 1010이고 두 번째 (numberOnScreen) 말할 수 있습니다 [1010, 10100, 10, 10}
어떤 아이디어이 인 이유 사고?
그것은 나를 위해 작동합니다. 'numberOnScreen'의 값을 확인하십시오. 아마도 틀린 것일 수도 있습니다. – paper1111
놀이터에서 작동하지만 앱에 숫자를 삽입하면 나에게 잘못된 대답을줍니다. 이 때문에 모든 x + y = x + x x - y = x - x. 등등 – Gustav
어떤 버튼이'func buttons '에 연결되어 있고'sender.tag'의 의미는'6'과'8'입니까? – vacawama