اطلاعیه

Collapse
No announcement yet.

یکی این برنامه ماشین حساب مهندسی رو توضیح بده(لطفا")

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    یکی این برنامه ماشین حساب مهندسی رو توضیح بده(لطفا")

    با سلام :
    دوستان اگه میشه این برنامه ماشین حساب مهندسی رو باز کنند تا افرادی مثل من (هر چند محدود هم ) حالیشون شه که چی به چییه(کار این توابع چییه؟و ...)
    آخه من با c کار نکردم ولی الف و بشرو بلدم :biggrin:
    اگه کدها درست معلوم نیست این فایل برنامه است .
    engineer_calculator.rar


    کد PHP:
    [ltr]

    #include <mega16.h>
    #include <delay.h>
    #include <lcd.h>
    #include <stdlib.h>
    #include <math.h>

    #asm
      
    .equ __lcd_port=0x18
    #endasm
    //#############################################
    int key(void);
    float _Main(void);
    void Mohandes(void);
    void Mohasebe(void);
    void Alamat(int,int);
    float Emoji(int);
    //#############################################
    float a t;
    int i ;
    char y=lcd[25] , z  ;
    //#############################################
    void main(void){

    DDRB=0x0F;
    DDRC=0x07;
    DDRD=0x0F;

    lcd_init(16);
    while (
    1){
    _Main();
    }
    }
    //#############################################################
    float _Main(void){
    int Loop ;
    key();
    if( 
    == 15 ){;;;lcd_clear();return ;}
    if( 
    &lt10 ){
        
    = (a*10)+;
        
    itoa(lcd);
        
    lcd_puts(lcd);
        
    delay_ms(50);
    }
     


    if( 
    &gt&&amp&lt16 ){
        if( 
    == 15 ){;;;lcd_clear();return ;}
        
    ;
        
    Alamat(y,1);
        while(
    Loop){
        
    key();
        if( 
    == 15 ){;;;lcd_clear();return ;}
        if( 
    &lt10 ){
            
    = (b*10)+;
            
    itoa(lcd);
            
    lcd_puts(lcd);
            
    delay_ms(50); 
        }else if(
    == 14){
            
    lcd_putchar('=');
            
    Mohasebe();
            
    ;
            
    Loop ;
        }
        }

    if( 
    &gt15 ){
    lcd_clear();
    a0;
    Alamat(2);
    ;
    Loop ;
    while(
    Loop){
    key();
    if( 
    == 15 ){;;;lcd_clear();return ;}
    if(
    &lt10){
        
    = (a*10) + ;
        
    itoa(lcd);
        
    lcd_puts(lcd);
        
    delay_ms(50);
    }else if ( 
    == 14){
        
    lcd_putchar('=');
        
    Mohandes();
    }
    Loop ;
    }
    }
    return 
    0;
    }
    //##########################################################
    void Mohasebe(void){                     
    if(
    == 10);
    if(
    == 11);
    if(
    == 12);
    if(
    == 13);
    ftoa(lcd);      
    lcd_puts(lcd);
    delay_ms(100);
    }
    //#########################################################
    float Emoji(int rr){
    q=1;
    for(
    i=0;i<rr;i++)2.71728 ;
    return 
    q;    
    }
    //#########################################################  
    void Mohandes(void){
    = (3.1415926535897932384626433832795/180)*;
    if(
    == 16)sin(t) ;
    if(
    == 17)cos(t) ;
    if(
    == 18)tan(t) ;
    if(
    == 19)1/tan(t) ;
    if(
    == 20)asin(t) ;
    if(
    == 21)acos(t) ;
    if(
    == 22)log(a) ;
    if(
    == 23)sqrt(a) ;
    if(
    == 24)Emoji(a) ;
    ftoa(lcd);      
    lcd_puts(lcd);
    delay_ms(100);
    }
    //#########################################################
    void Alamat(int Moji,int Halat){
    if(
    Halat == 1){
        if(
    Moji == 10)lcd_putchar('/') ;
        
    if(Moji == 11)lcd_putchar('*') ;
        
    if(Moji == 12)lcd_putchar('-') ;
        
    if(Moji == 13)lcd_putchar('+') ; 
        
    delay_ms(100);   
    }
    if(
    Halat == 2){
        if(
    Moji == 16)lcd_putsf("Sin ") ;
        if(
    Moji == 17)lcd_putsf("Cos ") ;
        if(
    Moji == 18)lcd_putsf("Tan ") ;
        if(
    Moji == 19)lcd_putsf("Cot ") ; 
        if(
    Moji == 20)lcd_putsf("aSin") ;
        if(
    Moji == 21)lcd_putsf("aCos") ;
        if(
    Moji == 22)lcd_putsf("Log ") ;
        if(
    Moji == 23)lcd_putsf("Sqrt ") ; 
        if(
    Moji == 24)lcd_putsf("exp ") ;
        
    delay_ms(100);

    }
    }
    //#########################################################
    int key(void){
    char KEY ;
    while(
    KEY){

        
    PORTD.0 ;
        
    PORTD.1 ;
        
    PORTD.2 ;
        
    PORTD.3 ;
        if(
    PIND.4 == 1){return KEY 0;delay_ms(50);}   
        if(
    PIND.5 == 1){return KEY 0;delay_ms(50);}  
        if(
    PIND.6 == 1){return KEY 0;delay_ms(50);}  
        if(
    PIND.7 == 1){return 10KEY 0;delay_ms(50);}    
        
    //==========================================
        
    PORTD.0 ;
        
    PORTD.1 ;
        
    PORTD.2 ;
        
    PORTD.3 ;
        if(
    PIND.4 == 1){return KEY 0;}   
        if(
    PIND.5 == 1){return KEY 0;}  
        if(
    PIND.6 == 1){return KEY 0;}
        if(
    PIND.7 == 1){return 11KEY 0;}    
        
    //==========================================
        
    PORTD.0 ;
        
    PORTD.1 ;
        
    PORTD.2 ;
        
    PORTD.3 ;
        if(
    PIND.4 == 1){return KEY 0;}     
        if(
    PIND.5 == 1){return KEY 0;}    
        if(
    PIND.6 == 1){return KEY 0;}   
        if(
    PIND.7 == 1){return 12KEY 0;}     
        
    //==========================================
        
    PORTD.0 ;
        
    PORTD.1 ;
        
    PORTD.2 ;
        
    PORTD.3 ;
        if(
    PIND.4 == 1){return 15KEY 0;}    
        if(
    PIND.5 == 1){return KEY 0;}    
        if(
    PIND.6 == 1){return 14KEY 0;}    
        if(
    PIND.7 == 1){return 13KEY 0;}

        
    //=============================================================================
        
    PORTC.0 ;
        
    PORTC.1 ;
        
    PORTC.2 ;
        if(
    PINC.5 == 1){return 16 KEY=0;}
        if(
    PINC.6 == 1){return 17KEY=0;}
        if(
    PINC.7 == 1){return 18 KEY=0;}
        
    //===================================================== 
        
    PORTC.0 ;
        
    PORTC.1 ;
        
    PORTC.2 ;
        if(
    PINC.5 == 1){return 19 KEY=0;}     
        if(
    PINC.6 == 1){return 20 KEY=0;}
        if(
    PINC.7 == 1){return 21 KEY=0;}
        
    //=====================================================
        
    PORTC.0 ;
        
    PORTC.1 ;
        
    PORTC.2 ;
        if(
    PINC.5 == 1){return 22 KEY=0;} 
        if(
    PINC.6 == 1){return 23 KEY=0;}
        if(
    PINC.7 == 1){return 24 KEY=0;}
     
    KEY ;    
    }
    }
    //############################################################
    [/ltr]

    موفق باشید
    راههایی که به آینده ختم می شوند رفتنی نیستند، ساختنی اند!
    No Risk, No Reward

    #2
    پاسخ : یکی این برنامه ماشین حساب مهندسی رو توضیح بده(لطفا&quot

    دوست عزیز کسی حال خوندنه اینا نداره . خودتون شروع کنید به خوندن مرحله به مرحله هر جاش را مشکل داشتید بگید من در خدمتم :nerd:
    چیزی را بگو که بتوانی بنویسی
    چیزی را بنویس که بتوانی امضا کنی
    چیزی را امضا کن که بتوانی به آن عمل کنی (ناپلئون)

    دیدگاه

    لطفا صبر کنید...
    X