Amazon.com Widgets Chapter 6 - Exercise 6 (finally)
Welcome, Guest. Please login or register.
Did you miss your activation email?
June 20, 2013, 12:42:05 AM
Home Help Search chat Login Register   
News: Read this please.The Great Kangaroo Escape Looking for reviews of the 4th ed on Amazon!   Twitter:  @skochan
                     

+  Official Forum for Programming in Objective-C (the iPhone Programming Language) - Stephen Kochan
|-+  Programming in Objective-C, 4th edition
| |-+  Exercises
| | |-+  Chapter 6
| | | |-+  Chapter 6 - Exercise 6 (finally)
Pages: [1]   Go Down
Print
Author Topic: Chapter 6 - Exercise 6 (finally)  (Read 280 times)
macgeeky
Newbie
*
Posts: 1






« on: April 23, 2012, 06:17:06 PM »

After hours of brain roasting, I finally think I got it. It's not the most effective algorithme, but it's working. I'll try to cut it down a little tomorrow.

Code: (Objective-C)
#import <Foundation/Foundation.h>

@interface NumberRow : NSObject

-(void)setUserNumber: (int)n;
-(void)numbersToChars;
-(int)userNumber;

@end

@implementation NumberRow
{
    int userNumber;
}

-(void)setUserNumber: (int)n
{
    userNumber = n;
}
-(void)numbersToChars
{
        switch (userNumber) {
        case 0:
            NSLog(@"zero\n");
            break;
        case 1:
            NSLog(@"one\n");
            break;
        case 2:
            NSLog(@"two\n");
            break;
        case 3:
            NSLog(@"three\n");
            break;
        case 4:
            NSLog(@"four\n");
            break;
        case 5:
            NSLog(@"five\n");
            break;
        case 6:
            NSLog(@"six\n");
            break;
        case 7:
            NSLog(@"seven\n");
            break;
        case 8:
            NSLog(@"eight\n");
            break;
        case 9:
            NSLog(@"nine\n");
            break;
         
        default:
            NSLog(@"The user input was not a number...");
            break;
    }      
}
-(int)userNumber
{
    return userNumber;
}

@end


int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        int number, divideWith = 1, counter = 1, firstNumber;
        
        BOOL erNegativt;
        
        NumberRow *spellIt = [[NumberRow alloc]init];
        
        // spør om nummer fra bruker
        NSLog(@"Nummeret: ");
        scanf("%i", &number);
        
        
        // avgjør om nummeret er negativt
        if (number < 0) {
            erNegativt = YES;
            number = -number;
        }    
        else
            erNegativt = NO;
        
    
        int numberCopy = number;
        int n = number;
        
        
        for (n = number; n != 0; n /= 10) {
            counter *= 10;
        }
        
        
        divideWith = counter / 10;
        
        //spytter inn minus om negativt
        if (erNegativt == YES)
            NSLog(@"minus");
        
        while (numberCopy != 0) {
            if (numberCopy > 9) {
                if (divideWith < 10) {
                    divideWith = 10;
                    }
                
                }
                
            //setter forsteNummer
                firstNumber = numberCopy / divideWith;
                [spellIt setUserNumber:firstNumber];
            
            
            
            // skriver ut i bokstaver
                [spellIt numbersToChars];
                numberCopy = numberCopy - (firstNumber * divideWith);
                
              
            // gjør klart for neste tall i løkka    
                divideWith /= 10;
        }
                      
        

        if (number == 0) {
            NSLog(@"null");
        }
        
        
    }
    return 0;
}
« Last Edit: April 23, 2012, 08:39:05 PM by macgeeky » Logged
Pages: [1]   Go Up
Print
Jump to:  



Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
Entire forum contents (c) 2009 classroomM.com. All rights reserved.