Lanka Developers Community

    Lanka Developers

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Shop

    C Programming මුල සිට ඉගෙනගනිමු (part 6 - Decision making(if-else statement - part 2))

    Blogs
    c programming
    4
    4
    509
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Kalana
      Kalana last edited by

      කලින් කොටසේ අපි ඉගෙන ගත්තා if, else if, else වැඩ කරන විදිහ හා ඒවා භාවිතා කරන ආකාරය පිලිබද. මේ කොටසින් මන් තව දුරටත් මේ statement එක ගැන කතා කිරීමට බලාපොරොත්තු වෙනවා.

      අපි දැන් බලමු && (AND), || (OR), ! (NOT) gates if condition එකක් ඇතුලේ වැඩ කරන ආකාරය. &&, ||, ! ගැන මන් මගේ කලින් ලිපියක සඳහන් කලා

      C Programming මුල සිට ඉගෙනගනිමු (part 3 - Operators) -: https://bit.ly/2ruMH22

      &&(AND)

      • කලින් ලිපියේ අපිට 0 ට වඩා විශාල සංඛ්‍යා සෙවීමට දුන් විට අපි if(num > 0) භාවිතා කලා.

      • ඒ වගේම අපිට 0 ට වඩා කුඩා සංඛ්‍යා සෙවීමට දුන් විට අපි if(num < 0) භාවිතා කලා.

      • නමුත් අපිට කිව්වොත් 0 ත් 100ත් අතර සංඛ්‍යාවක් සෙවීමට දුන්නොත් කොහොමද if එකක් යොදාගෙන ඒ දේ කරන්නේ

      මන් මේක සරල ප්‍රශ්නයක් ඔස්සේ පැහැදිලි කරන්නම්.

      Question 1 -: Write a C program to input number from keyboard. find out that number in between 0 and 100. If it is true
      display a message called "success" otherwise display a message "fail".

      මේ ප්‍රශ්නෙන් කියවෙන්නේ අපි සංඛ්‍යාවක් input කරපු විට එම සංඛ්‍යාව 0 ත් 100 ත් අතර පවතින සංඛ්‍යාවක් නම් "success" කියලා message එකක් එන්න ඕන. එම සංඛ්‍යාව 0 ත් 100 ත් අතර නැතිනම්
      "fail" කියලා message එකක් එන්න ඕන. මන් මේක පියවර ආකාරයෙන් පැහැදිලි කරන්නම්.

      • අපි 0 ට වැඩි සංඛ්‍යා නිරූපණය කරන්නේ num > 0 මගින්. (num කියලා කියන්නේ අපි ගත්තු random variable එකක්)

      • අපි 100 ට වඩා අඩු සංඛ්‍යා නිරූපණය කරන්නේ num < 100 මගින්.

      • ** එම නිසා 0 ත් 100 ත් අතර සංඛ්‍යාවක් වීමට නම් num කියන variable එක 0 < num < 100 මේ විදිහට පැවතිය යුතුය.** එනම් num > 0 හා num < 100 යන කරුණු දෙක එකවර
        සත්‍ය විය යුතුය. කරුණු එකකට වඩා වැඩි ගණනක් එක වර සත්‍යදැයි බලන gate එක වන්නේ AND(&&) gate එකයි. අපි දැන් මේ ප්‍රශ්නය විසදමු.

      #include <stdio.h>
      
      int main()
      {
          int num;
          
          printf("Enter a number = ");
          scanf("%d", &num); //කිසියම් සංඛ්‍යාවක් input කිරීම
          
          if(num > 0 && num < 100) //එම සංඛ්‍යාව 0ට වඩා විශාල හා 100ට වඩා කුඩානම්
          {
              printf("Success");
          }
          else //එම සංඛ්‍යාව 0ත් 100ත් අතර නොමැතිනම්
          {
              printf("fail");
          }
          
          return 0;
      }
      
      First run -: Enter a number = 50                                                                                                  
                   Success
      
      Second run-: Enter a number = 105                                                                                                  
                   fail   
      
      Third run -: Enter a number = -20                                                                                                 
                   fail 
      

      ||(OR)

      මේකෙන් කරන්නේ කරුණු රාශියකින් එක කරුණක් හෝ සත්‍ය නම් ක්‍රියාත්මක වෙන එක. මන් මේකත් සරල උදාහරණයක් මඟින් දක්වන්නම්

      **Question 2 -: ** Write a C programm to input number from keyboard. That number should be smaller than 0 or
      greater than 100. otherwise display "fail" message.

      මේ ප්‍රශ්නෙන් කියවෙන්නේ අපි සංඛ්‍යාවක් input කරපු විට එම සංඛ්‍යාව 0 ට වඩා කුඩා හෝ 100 ට වඩා විශාල බව සොයන්න යන්නයි. මෙම අවස්තාවේදී අපි 0ත් 100ත් අතර සංඛ්‍යාවක් ඇතුලත් කලොත්
      "fail" කියලා message එකක් display කල යුතු වේ.

      • එනම් num < 0 උනොත් සත්‍ය වේ. (success)
      • num > 100 උනොත් සත්‍ය වේ. (success)
      • 0 < num < 100 උනොත් අසත්‍ය වේ (fail)

      අපි දැන් මේ ප්‍රශ්නය විසදමු.

      #include <stdio.h>
      
      int main()
      {
          int num;
          
          printf("Enter a number = ");
          scanf("%d", &num); //කිසියම් සංඛ්‍යාවක් input කිරීම
          
          if(num < 0 || num > 100) //සංඛ්‍යාව 0ට වඩා කුඩා හෝ සංඛ්‍යාව 100ට වඩා විශාල නම්. එනම් මෙම කාරණා දෙකෙන් එක කාරණයක් සත්‍ය විය යුතුය.
          {
              printf("Success");
          }
          else //සංඛ්‍යාව 0ත් 100ත් අතර පවතී නම්
          {
              printf("fail");
          }
          
          return 0;
      }
      
      First run -: Enter a number = 105                                                                                                 
                   Success
      
      Second run-: Enter a number = -5                                                                                                 
                   Success   
      
      Third run -: Enter a number = 40                                                                                                 
                   fail 
      

      ! (NOT)

      දී ඇති කාරණය සත්‍ය නම් එය අසත්‍යක් ලෙස පිලිගැනීම මෙමගින් සිදු කරයි.

      **Question 3 -: ** Write a C programm to input number from keyboard. If that number not equal to 0 display "success" message.
      otherwise display "fail" message.

      මෙහිදී කියන්නේ ඔබ ඇතුලත් කරන සංඛ්‍යාව 0ට අසමාන නම් "success" කියලා message එකක් output කරන්න කියලා. 0ට සමාන නම් "fail" කියලා message එකක් output කල යුතුයි.

      අපි දැන් මේ ප්‍රශ්නය විසදමු.

      #include <stdio.h>
      
      int main()
      {
          int num;
          
          printf("Enter a number = ");
          scanf("%d", &num); //කිසියම් සංඛ්‍යාවක් input කිරීම
          
          if(!(num == 0)) //එම සංඛ්‍යාව 0 සමඟ සසදා එය අසත්‍යනම් එය සත්‍යක් ලෙස ගැනීම
          {
              printf("Success");
          }
          else // //එම සංඛ්‍යාව 0 සමඟ සසදා එය සත්‍යනම් එය අසත්‍යක් ලෙස ගැනීම
          {
              printf("fail");
          }
          
          return 0;
      }
      
      First run -: Enter a number = 5                                                                                                 
                   Success
      
      Second run-: Enter a number = 0                                                                                                 
                   fail   
      

      අපි අවසාන වශයෙන් තරමක් දිගු C application එකක් සාදමු.

      Question 4 -: write a program to fulfill this table

            Mark             Grade
      100 >= Mark >= 80         A
       79 >= Mark >= 70         B
       69 >= Mark >= 45         C
         0>= Mark <= 44         F
           Otherwise          Error
      
      #include <stdio.h>
      
      int main()
      {
          int mark;
          
          printf("Enter a mark = ");
          scanf("%d", &mark); //කිසියම් සංඛ්‍යාවක් input කිරීම
          
          if(mark <= 100 && mark >= 80) //එම සංඛ්‍යාව 100 හා 80 අතර ඇත්නම්
      	{ 
              printf("A Grade");
          }
          else if(mark <= 79 && mark >= 70)  //එම සංඛ්‍යාව 79 හා 70 අතර ඇත්නම්
      	{
              printf("B Grade");
          }
          else if(mark <= 69 && mark >= 45)  //එම සංඛ්‍යාව 69 හා 45 අතර ඇත්නම්
      	{
              printf("C Grade");
          }
          else if(mark <= 44 && mark >= 0)  //එම සංඛ්‍යාව 44 හා 0 අතර ඇත්නම්
      	{
              printf("F Grade");
          }
          else  //එම සංඛ්‍යාව 100 වඩා වැඩි හෝ 0 ට වඩා අඩුනම්
      	{
              printf("Error");
          }
          
          return 0;
      }
      
      First run -: Enter a mark = 90                                                                                                  
                   A Grade
      
      Second run-: Enter a mark = 70                                                                                                  
                   B Grade   
      
      Third run -: Enter a mark = 50                                                                                                 
                   C Grade 
      
      Forth run -: Enter a mark = 35                                                                                                
                   F Grade 
      
      Fifth run -: Enter a mark = -5                                                                                                 
                   Error 
      
      Sixth run -: Enter a mark = 105                                                                                                
                   Error 
      

      මන් මේ පිලිබද ප්‍රශ්න කිහිපයකුත් දාන්නම් ඒවගේ උත්තරත් එක්ක.

      1. Obtain two numbers from the keyboard and display the larger number.

      answer -> https://drive.google.com/open?id=1_HwG20mPZOdRcl3Hakorim9KixD4howV

      1. Enter the final mark of a student and display “Pass” or “Fail”. Student should get more than 45 marks to pass a subject.

      answer -> https://drive.google.com/open?id=1ZM65EF1eBzgVR86egEjXkRkAYjvTIEEW

      1. Read an integer from the keyboard. If the number is > 0 display “number is positive”.
        If number is zero display “ Number is zero”. Otherwise display “Number is negative”.

      answer -> https://drive.google.com/open?id=1AGC9wTuQgRQXCtB4S_3XGvbs8AGBc9m6

      1. Develop a C program to determine if a customer has exceeded the credit limit on an account. Following details are
        taken from the keyboard.
      • Account Number
      • Balance at the beginning of the month
      • Allowed Credit Limit
      • Total credits
      • Total charges

      Calculate the new balance (= balance at the beginning + charges – credits) and determine if the new balance exceeds
      credit limit. The program should display the new balance and the message, “Credit Limit exceeded”.

      answer -> https://drive.google.com/open?id=1ZwiClrRQ-rPX9cx2XNX3XF6mWhT3SDeH

      1. Develop a program that will determine the gross pay for employees. The company pays “straight time” for the first
        40 hours worked by the employee and pays “time-and-a –half” for all hours excess of 40 hours.
        Write a C program to enter the no of hours worked, hourly rate and calculate the employee’s gross pay.

      answer -> https://drive.google.com/open?id=1ua96xG_lfxdDtHOqWwu-e6RzUFb5m6nd

      • C programm එකක් windows වල run කරන විදිහ --> https://bit.ly/2O6rLXR

      ඔබට අවශ්‍යනම් ඔබේ බ්‍රව්සර් එක හරහා online C programms run කරන්න පුලුවන්. එහෙම කරන්න පුලුවන් ලින්ක්ස් මන් පහතින් දාන්නම්

      • https://www.onlinegdb.com/online_c_compiler
      • https://www.tutorialspoint.com/compile_c_online.php
      • https://repl.it/languages/c

      සරලව මුල ඉදන් C programming ඉගෙන ගන්න පුලුවන් හොදම site දෙකත් මන් දාන්නම්

      • https://www.geeksforgeeks.org/c-programming-language/
      • https://www.tutorialspoint.com/cprogramming/index.htm

      මගේ කලින් ලිපි

      • C Programming මුල සිට ඉගෙනගනිමු(part 1 - Introduction) -: https://bit.ly/2O6rLXR
      • C Programming මුල සිට ඉගෙනගනිමු (part 2 - Variables) -: https://bit.ly/2spD6Kn
      • C Programming මුල සිට ඉගෙනගනිමු (part 3 - Operators) -: https://bit.ly/2ruMH22
      • C Programming මුල සිට ඉගෙනගනිමු (part 4 - Input & Output functions) -: https://bit.ly/2qU8IaK
      • C Programming මුල සිට ඉගෙනගනිමු (part 5 - create simple applications) -: https://bit.ly/2DDfy7b
      • C Programming මුල සිට ඉගෙනගනිමු (part 6 - Decision making(if-else statement - part 1)) -: https://bit.ly/2LiVsmZ

      මන් ඊළග ලිපියෙන් කියලා දෙන්නම් switch statement ගැන . මගේ ලිපි වල අඩුපාඩු තියෙනවනම් දන්නේ නැති දේවල් තියෙනවනම් පහලින් කමෙන්ට් එකක් දාන්න.
      තව ලිපියකින් හම්බෙමු ජය වේවා.

      1 Reply Last reply Reply Quote 1
      • root
        root Linux Help last edited by

        Fatta bro. Good work.

        1 Reply Last reply Reply Quote 1
        • dev_lak
          dev_lak last edited by

          ftta bro

          1 Reply Last reply Reply Quote 0
          • Nubelle
            Nubelle Web Development last edited by

            patta bro

            1 Reply Last reply Reply Quote 0
            • 1 / 1
            • First post
              Last post

            0
            Online

            3.7k
            Users

            1.3k
            Topics

            5.3k
            Posts

            • Privacy
            • Terms & Conditions
            • Donate

            © Copyrights and All right reserved Lanka Developers Community

            Powered by Axis Technologies (PVT) Ltd

            Made with in Sri Lanka

            | |