0

2 進数から 10 進数への計算機を作成しようとしていますが、実際に機能する変換を行うのに問題があります。まず、Objective C とプログラミング全般の完全な初心者として自己紹介したいと思います。その結果、多くの概念が私には難しく見えるので、最も効率的な方法ではなく、最も簡単に理解できる方法を探しています。現時点では、入力を受け入れてラベルに表示する電卓があります。この部分は正常に機能しており、問題はありません。入力が格納される変数は_display = [[NSMutableString stringWithCapacity:20] retain]; これは完全に機能しており、それに応じてデータを変更できます。私がやりたいことは、変換の NSString を別のラベルに表示できるようにすることです。現時点では、いくつかの解決策を試しましたが、まともな結果は得られませんでした。これが最新の試みです

    - (NSMutableString *)displayValue2:(long long)element
{
    _str= [[NSMutableString alloc] initWithString:@""];     
    if(element > 0){
        for(NSInteger numberCopy = element; numberCopy > 0; numberCopy >>= 1)
        {

            [_str insertString:((numberCopy & 1) ? @"1" : @"0") atIndex:0];
        }
}
    else if(element == 0)
    {
        [_str insertString:@"0" atIndex:0];
    }
    else
    {
        element = element * (-1);

        _str = [self displayValue2:element];
        [_str insertString:@"0" atIndex:0];
        NSLog(@"Prima for: %@",_str);
        for(int i=0; i<[_str length];i++)

        _str = _display;
        NSLog(@"Dopo for: %@",_str);
    }
    return _str;

}

View Controller 内に変換ボタンの設定があります。これを押すと、2 番目の表示フィールドを 10 進数に相当する値に設定します。これは、displayValue2 を設定して、選択した文字列を返すように機能しています。必要なのは、この変換を機能させるための助けだけです。現時点では、このコードのビットにより、クラスの to に「不完全な実装」が表示されています。助けてください。時間を割いて助けてくれる人に乾杯します。

4

1 に答える 1