By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
445,750 Members | 1,165 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 445,750 IT Pros & Developers. It's quick & easy.

i need u r help plz!!!

momotaro
100+
P: 357
am using two function to compute the 'LCD' of tree numbers the first one to compute the least number of the tree given and the second is computing the 'LCD' but my program crash down !!!!
plz help
Expand|Select|Wrap|Line Numbers
  1. /* This program call two functions, 'min' to compute the least number
  2.  * and 'lcd' to compute the least common divisor.
  3.  */
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. int a, b, c, min, lcd, i;
  7.  
  8. //The prototype of the used functions.
  9. int MIN (a, b, c);
  10. int LCD (a, b, c);
  11.  
  12. //The function main.
  13. main ()
  14. {
  15.     char answer;
  16.   do{
  17.     printf("Enter your 3 numbers: ");
  18.     scanf("%d %d %d", a ,b ,c);
  19.     a=abs(a);b=abs(b);c=abs(c);
  20.     i=LCD(a, b, c);
  21.     printf("your lcd is %d", LCD);
  22.     printf("Do you want to re use this program? Y/N: ");
  23.     scanf("%c", &answer);
  24.     }
  25.     while (answer=='y' || answer=='Y');
  26. }
  27.  
  28. //Definitions of the function 'min'.
  29. int MIN (int a, int b, int c)
  30. {
  31.     min=a;
  32.     if (b<min)
  33.         min=b;
  34.     if (c<min)
  35.         min=c;
  36.     return (min);
  37. }
  38.  
  39. //Definition of the function 'lcd'.
  40. int LCD (int a, int b, int c)
  41. {
  42.     int n;
  43.     n= MIN (a, b, c);
  44.     for (i=2 ; i<=n ; i++)
  45.         if (a%i==0 && b%i==0 && c%i==0)
  46.             break;
  47.     return (i);
  48. }
Nov 6 '06 #1
Share this Question
Share on Google+
1 Reply


Expert 100+
P: 1,510
your program had a couple of errors (indicated by // ** comment) and now runs
Expand|Select|Wrap|Line Numbers
  1. /* This program call two functions, 'min' to compute the least number
  2.  * and 'lcd' to compute the least common divisor.
  3.  */
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. int a, b, c, min, lcd, i;
  7.  
  8. //The prototype of the used functions.
  9. int MIN (a, b, c);
  10. int LCD (a, b, c);
  11.  
  12. //The function main.
  13. main ()
  14. {
  15.     char answer;
  16.   do{
  17.     printf("Enter your 3 numbers: ");
  18.     scanf("%d %d %d", &a ,&b ,&c);     // **  insert &
  19.     a=abs(a);b=abs(b);c=abs(c);
  20.     i=LCD(a, b, c);
  21.     printf("your lcd is %d\n", i);      // ** replace LCD with i
  22.     printf("Do you want to re use this program? Y/N: ");
  23.     scanf("%c", &answer);
  24.     }
  25.     while (answer=='y' || answer=='Y');
  26. }
  27.  
  28. //Definitions of the function 'min'.
  29. int MIN (int a, int b, int c)
  30. {
  31.     min=a;
  32.     if (b<min)
  33.         min=b;
  34.     if (c<min)
  35.         min=c;
  36.     return (min);
  37. }
  38.  
  39. //Definition of the function 'lcd'.
  40. int LCD (int a, int b, int c)
  41. {
  42.     int n;
  43.     n= MIN (a, b, c);
  44.     for (i=2 ; i<=n ; i++)
  45.         if (a%i==0 && b%i==0 && c%i==0)
  46.             break;
  47.     return (i);
  48. }
  49.  
in particular you need the & in calls to scanf(), i.e.
scanf("%d %d %d", &a ,&b ,&c);
the & passes a pointer (the address of) to the variable to scanf() so it can put the value read into it
Nov 6 '06 #2

Post your reply

Sign in to post your reply or Sign up for a free account.