Рубрики

Программа для поиска остатка без использования оператора по модулю или%

Учитывая два числа 'num' и 'divisor', найдите остаток, когда 'num' делится на 'divisor'. Использование оператора по модулю или% не допускается.

Примеры :

Input:  num = 100, divisor = 7
Output: 2

Input:  num = 30, divisor = 9
Output: 3

Способ 1:

C ++

// C ++ программа для поиска остатка без использования
// оператор по модулю
#include <iostream>

using namespace std;

  
// Эта функция возвращает остаток от числа / делителя
// без использования оператора% (по модулю)

int getRemainder(int num, int divisor)

{

    return (num - divisor * (num / divisor));

}

  
// Программа драйвера для проверки вышеуказанных функций

int main()

{

    // cout << 100% 0;

    cout << getRemainder(100, 7);

    return 0;

}

Джава

// Java программа для поиска остатка без
// используя оператор по модулю

import java.io.*;

  

class GFG {

  

    // Эта функция возвращает остаток от

    // число / делитель без использования% (по модулю)

    // оператор

    static int getRemainder(int num, int divisor)

    {

        return (num - divisor * (num / divisor));

    }

  

    // Программа драйвера для проверки вышеуказанных функций

    public static void main(String[] args)

    {

  

        // напечатать 100% 0;

        System.out.println(getRemainder(100, 7));

    }

}

  
// Этот код предоставлен Sam007.

питон

# Python программа для поиска остатка
# без использования оператора по модулю

  
# Эта функция возвращает остаток от
# число / делитель без использования% (по модулю)
# оператор

def getRemainder(num, divisor):

    return (num - divisor * (num // divisor))

  

  
# Драйверная программа для проверки вышеуказанных функций

num = 100

divisor = 7

print(getRemainder(num, divisor))

  
# Этот код предоставлен Danish Raza

C #

// C # программа для поиска остатка без использования
// оператор по модулю

using System;

  

class GFG {

    // Эта функция возвращает остаток от

    // число / делитель без использования%

    // (по модулю) оператор

    static int getRemainder(int num, int divisor)

    {

        return (num - divisor * (num / divisor));

    }

  

    // Программа драйвера для проверки вышеуказанных функций

    public static void Main()

    {

  

        // напечатать 100% 0;

        Console.Write(getRemainder(100, 7));

    }

}

  
// Этот код предоставлен Sam007.

PHP

<?php
// PHP программа для поиска остатка
// без использования оператора по модулю

  
// Эта функция возвращает остаток
// числа / делителя без использования
//% (по модулю) оператор

function getRemainder($num, $divisor)

{

    $t = ($num - $divisor

         (int)($num / $divisor));

    return $t;

}

  
// Код драйвера

echo getRemainder(100, 7);

  
// Этот код предоставлен ajit
?>

Выход :

2

Этот метод предоставлен Бишал Кумар Дубей

Способ 2

Идея проста, мы запускаем цикл, чтобы найти наибольшее кратное «делителя», которое меньше или равно «num». Как только мы находим такое кратное число, мы вычитаем кратное из 'num', чтобы найти делитель.

Ниже приводится реализация вышеуказанной идеи. Спасибо одиннадцати за то, что предложили это решение в комментарии.

C ++

// C ++ программа для поиска остатка без использования оператора по модулю
#include <iostream>

using namespace std;

  
// Эта функция возвращает остаток от числа / делителя без
// используя оператор% (по модулю)

int getRemainder(int num, int divisor)

{

    // Обрабатывать делитель, равный 0

    if (divisor == 0) {

        cout << "Error: divisor can't be zero \n";

        return -1;

    }

  

    // Обработка отрицательных значений

    if (divisor < 0)

        divisor = -divisor;

    if (num < 0)

        num = -num;

  

    // Найти самый большой продукт делителя, который меньше

    // чем или равно 'num'

    int i = 1;

    int product = 0;

    while (product <= num) {

        product = divisor * i;

        i++;

    }

  

    // вернуть остаток

    return num - (product - divisor);

}

  
// Программа драйвера для проверки вышеуказанных функций

int main()

{

    // cout << 100% 0;

    cout << getRemainder(100, 7);

    return 0;

}

Джава

// Java программа для поиска остатка без
// используя оператор по модулю

import java.io.*;

  

class GFG {

  

    // Эта функция возвращает остаток

    // числа / делителя без использования%

    // (по модулю) оператор

    static int getRemainder(int num, int divisor)

    {

  

        // Обрабатывать делитель, равный 0

        if (divisor == 0) {

            System.out.println("Error: divisor "

                               + "can't be zero \n");

            return -1;

        }

  

        // Обработка отрицательных значений

        if (divisor < 0)

            divisor = -divisor;

        if (num < 0)

            num = -num;

  

        // Находим наибольшее произведение делителя

        // меньше или равно 'num'

        int i = 1;

        int product = 0;

        while (product <= num) {

            product = divisor * i;

            i++;

        }

  

        // вернуть остаток

        return num - (product - divisor);

    }

  

    // Программа драйвера для проверки вышеуказанных функций

    public static void main(String[] args)

    {

  

        // напечатать 100% 0;

        System.out.println(getRemainder(100, 7));

    }

}

  
// Этот код предоставлен Sam007.

питон

# Python программа для поиска остатка без
# используя оператор по модулю. Эта функция
# возвращает остаток от числа / делителя без
# используя оператор% (по модулю)

  

def getRemainder(num, divisor):

  

    # Ручка делителя равна 0 регистру

    if (divisor == 0):

        return False

  

    # Обрабатывать отрицательные значения

    if (divisor < 0):

        divisor = -divisor

    if (num < 0): 

        num = -num

  

    # Найти самый большой продукт «делитель»

    # меньше или равно 'num'

    i = 1

    product = 0

    while (product <= num):

            product = divisor * i

            i += 1

    # возврат остатка

    return num - (product - divisor)

  
# Драйверная программа для проверки вышеуказанных функций

num = 100

divisor = 7

print(getRemainder(num, divisor))

  
# Этот код предоставлен Danish Raza

C #

// C # программа для поиска остатка без
// используя оператор по модулю

using System;

  

class GFG {

  

    // Эта функция возвращает остаток

    // числа / делителя без использования%

    // (по модулю) оператор

    static int getRemainder(int num, int divisor)

    {

  

        // Обрабатывать делитель, равный 0

        if (divisor == 0) {

            Console.WriteLine("Error: divisor "

                              + "can't be zero \n");

            return -1;

        }

  

        // Обработка отрицательных значений

        if (divisor < 0)

            divisor = -divisor;

        if (num < 0)

            num = -num;

  

        // Находим наибольшее произведение делителя

        // меньше или равно 'num'

        int i = 1;

        int product = 0;

        while (product <= num) {

            product = divisor * i;

            i++;

        }

  

        // вернуть остаток

        return num - (product - divisor);

    }

  

    // Программа драйвера для проверки вышеуказанных функций

    public static void Main()

    {

  

        // напечатать 100% 0;

        Console.Write(getRemainder(100, 7));

    }

}

  
// Этот код предоставлен Sam007.

PHP

<?php

  
// php программа для поиска остатка без
// используя оператор по модулю

  
// Эта функция возвращает остаток от
// число / делитель без использования% (по модулю)
// оператор

  

function getRemainder($num, $divisor)

{

      

    // Обрабатывать делитель, равный 0

    if ($divisor == 0)

    {

        echo "Error: divisor can't be zero \n";

        return -1;

    }

  

    // Обработка отрицательных значений

    if ($divisor < 0) $divisor = -$divisor;

    if ($num < 0)     $num = -$num;

  

    // Находим наибольшее произведение делителя

    // меньше или равно 'num'

    $i = 1;

    $product = 0;

    while ($product <= $num)

    {

        $product = $divisor * $i;

        $i++;

    }

  

    // вернуть остаток

    return $num - ($product - $divisor);

}

  
// Программа драйвера для проверки вышеуказанных функций

echo getRemainder(100, 7);

  
// Этот код предоставлен ajit.
?>

Выход :

2

Эта статья предоставлена Chirag. Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Способ 3

Продолжайте вычитать знаменатель из числителя, пока числитель не станет меньше знаменателя.

C ++

// C ++ реализация подхода
#include <iostream>

using namespace std;

  
// Функция для возврата num% делителя
// без использования оператора% (по модулю)

int getRemainder(int num, int divisor)

{

  

    // Пока делитель меньше

    // чем n, продолжайте вычитать

    // это из числа

    while (num >= divisor)

        num -= divisor;

  

    return num;

}

  
// Код драйвера

int main()

{

    int num = 100, divisor = 7;

    cout << getRemainder(num, divisor);

  

    return 0;

}

Джава

// Java-реализация подхода

import java.util.*;

  

class GFG 

{

  
// Функция для возврата num% делителя
// без использования оператора% (по модулю)

static int getRemainder(int num, int divisor)

{

  

    // Пока делитель меньше

    // чем n, продолжайте вычитать

    // это из числа

    while (num >= divisor)

        num -= divisor;

  

    return num;

}

  
// Код драйвера

public static void main(String[] args) 

{

    int num = 100, divisor = 7;

    System.out.println(getRemainder(num, divisor));

}
}

  
// Этот код предоставлен Принчи Сингхом

python3

# Python3 реализация подхода

  
# Функция для возврата num% делителя
# без использования оператора% (по модулю)

def getRemainder(num, divisor):

  

    # Хотя делитель меньше

    # чем n, продолжайте вычитать

    # это из числа

    while (num >= divisor):

        num -= divisor;

  

    return num;

  
# Код драйвера

if __name__ == '__main__':

  

    num = 100; divisor = 7;

    print(getRemainder(num, divisor));

  
# Этот код предоставлен Принчи Сингхом

C #

// C # реализация подхода

using System;

      

class GFG 

{

  
// Функция для возврата num% делителя
// без использования оператора% (по модулю)

static int getRemainder(int num, int divisor)

{

  

    // Пока делитель меньше

    // чем n, продолжайте вычитать

    // это из числа

    while (num >= divisor)

        num -= divisor;

  

    return num;

}

  
// Код драйвера

public static void Main(String[] args) 

{

    int num = 100, divisor = 7;

    Console.WriteLine(getRemainder(num, divisor));

}
}

  
// Этот код предоставлен PrinciRaj1992

Выход :

2

Рекомендуемые посты:

Программа для поиска остатка без использования оператора по модулю или%

0.00 (0%) 0 votes