Найти НОК (наименьшее общее кратное) чисел N и M - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Задание : Найти НОК (наименьшее общее кратное) чисел N и M , числа должен вводить пользователь и нельзя делить на 0 и на негативные числа .

Решение задачи: «Найти НОК (наименьшее общее кратное) чисел N и M»

textual
Листинг программы
#pragma hdrstop
#pragma argsused
 
#include <stdio.h>
#include <stdlib.h>
#include <tchar.h>
 
 
 
int gcd( int a, int b ) {
    while(a!=b) 
{
if (a>b) a-=b;
else b-=a;
}
return a;
}
int main() {
    int a, b;
     char x; 
     do {
    printf("Vvedite pervoje cislo:");
    scanf("%d", &a);
 
    printf("Vvedite vtoroe cislo:"); 
    scanf("%d", &b);
 
 
      if( a == 0 || b == 0 ){
        printf( "S 0 delit nelza!" );
                                          }
 
 
 
    if (a < 0) { 
        printf("\nVne diapazona");
    }
 
     printf( "Naimensie obsee kratnoe = %d\n", lcm( abs( a ), abs( b ) ) );
 
 
 
     printf("\nEsli hotite povtorit Y\n\nEsli net , lubuju druguju bukvu\n");
 
        flushall();
        scanf(" %c", &x);
 
        clrscr();
    }
    while (x == 'y' || x == 'Y');
 
    getch();
}

Объяснение кода листинга программы

  1. Сначала подключаются необходимые заголовочные файлы: stdio.h, stdlib.h, tchar.h
  2. Далее определена функция gcd(int a, int b), которая находит НОК(наименьшее общее кратное) двух целых чисел.
  3. В функции main() определены переменные a, b, x типа int и типа char соответственно.
  4. Далее с помощью цикла do-while происходит запрос на ввод двух целых чисел с помощью функции scanf().
  5. После ввода чисел выполняется проверка на ноль и отрицательность введенных чисел.
  6. Если выполняется хотя бы одно из условий, выводится сообщение об ошибке и программа переходит к следующей итерации цикла do-while.
  7. В противном случае, вызывается функция lcm(abs(a),abs(b)), которая находит НОК(наименьшее общее кратное) чисел a и b.
  8. Результат выводится на экран с помощью функции printf().
  9. После вывода результата, пользователю предлагается ввести 'y' или 'Y' для повторного ввода чисел или любую другую букву для выхода из программы.
  10. Ввод символа сохраняется в переменной x.
  11. Если введенный символ равен 'y' или 'Y', программа возвращается к шагу 4.
  12. Если введенный символ не равен 'y' или 'Y', программа завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.714 из 5
Похожие ответы