Рубрики

Заменить все «0» на «5» во входном целом

В качестве входных данных введите целое число и замените все 0 на целое число.
Примеры:

    102 - 152
    1020 - 1525 

Использование массива для хранения всех цифр не допускается.

Источник: интервью Амазонки Опыт | Комплект 136 (для SDE-T)

Идея проста, мы получаем последнюю цифру, используя оператор мод %. Если цифра 0, мы заменим ее на 5, в противном случае оставим ее как есть. Затем мы вернемся к оставшимся цифрам.

Ниже приводится реализация вышеуказанной идеи.

C ++

// C ++ программа для замены всех '0'
// с '5' во входном целом
#include <bits/stdc++.h>

using namespace std;

  
// Рекурсивная функция для замены всех 0
// с 5s во входном числе
// работаем, если сам входной номер равен 0.

int convert0To5Rec(int num)

{

    // Базовый случай для завершения рекурсии

    if (num == 0)

        return 0;

  

    // Извлечь последнюю цифру и

    // меняем его при необходимости

    int digit = num % 10;

    if (digit == 0)

        digit = 5;

  

    // Преобразовать оставшиеся цифры и

    // добавляем последнюю цифру

    return convert0To5Rec(num/10) * 

                       10 + digit;

}

  
// Он обрабатывает 0 и вызывает convert0To5Rec ()
// для других номеров

int convert0To5(int num)

{

    if (num == 0)

    return 5;

    else return convert0To5Rec(num);

}

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

int main()

{

    int num = 10120;

    cout << convert0To5(num);

    return 0;

}

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

С

// C-программа для замены всех '0' на '5' во входном целом
#include<stdio.h>

  
// Рекурсивная функция для замены всех 0 на 5 во входном числе
// Не работает, если сам входной номер равен 0.

int convert0To5Rec(int num)

{

    // Базовый случай для завершения рекурсии

    if (num == 0)

        return 0;

  

    // Извлекаем последнюю цифру и меняем ее при необходимости

    int digit = num % 10;

    if (digit == 0)

        digit = 5;

  

    // Преобразование оставшихся цифр и добавление последней цифры

    return convert0To5Rec(num/10) * 10 + digit;

}

  
// обрабатывает 0 и вызывает convert0To5Rec () для других номеров

int convert0To5(int num)

{

    if (num == 0)

       return 5;

    else return  convert0To5Rec(num);

}

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

int main()

{

    int num = 10120;

    printf("%d", convert0To5(num));

    return 0;

}

Джава

// Java-код для замены всех 0 на 5 во входном целом

class GFG {

      

    // Рекурсивная функция для замены всех 0 на 5 в

    // входной номер. Не работает, если введен номер

    // само равно 0.

    static int convert0To5Rec(int num)

    {

        // Базовый вариант

        if (num == 0)

            return 0;

          

        // Извлекаем последнюю цифру и меняем ее при необходимости

        int digit = num % 10

        if (digit == 0)

            digit = 5;

  

        // Преобразовать оставшиеся цифры и добавить

        // последняя цифра

        return convert0To5Rec(num / 10) * 10 + digit;

    }

  

    // Он обрабатывает 0 и вызывает convert0To5Rec () для

    // другие номера

    static int convert0To5(int num)

    {

        if (num == 0)

            return 5;

        else

            return convert0To5Rec(num);

    }

  

    // Функция драйвера

    public static void main(String[] args)

    {

        System.out.println(convert0To5(10120));

    }

}

  
// Этот код предоставлен Камалем Равалом

питон

# Python программа для замены всех 0 на 5 в данном целом числе

  
# Рекурсивная функция для замены всех 0 на 5 в целом числе
# Не работает, если заданное число равно 0

def convert0to5rec(num):

  

    # Базовый случай для прекращения рекурсии

    if num == 0:

        return 0

  

    # Извлечь последнюю цифру и изменить ее при необходимости

    digit = num % 10

  

    if digit == 0:

        digit = 5

  

    # Преобразовать оставшиеся цифры и добавить последнюю цифру

    return convert0to5rec(num/10) * 10 + digit

  
# Он обрабатывает от 0 до 5 вызовов convert0to5rec () для других номеров

def convert0to5(num):

    if num == 0:

        return 5

    else:

        return convert0to5rec(num)

  

  
# Драйверная программа

num = 10120

print convert0to5(num)

  
# Предоставлено Харшитом Агравалом

C #

// код C # для замены всех 0
// с 5 во входном целом

using System;

  

class GFG 

  
// Рекурсивная функция для замены
// все 0 с 5 во входном номере.
// Не работает, если введен номер
// само равно 0.

static int convert0To5Rec(int num) 

    // Базовый вариант

    if (num == 0) 

        return 0; 

      

    // Извлечь последнюю цифру и

    // меняем его при необходимости

    int digit = num % 10; 

    if (digit == 0) 

        digit = 5; 

  

    // Преобразовать оставшиеся цифры

    // и добавляем последнюю цифру

    return convert0To5Rec(num / 10) * 10 + digit; 

  
// Обрабатывает 0 и вызывает
// convert0To5Rec () для других чисел

static int convert0To5(int num) 

    if (num == 0) 

        return 5; 

    else

        return convert0To5Rec(num); 

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

static public void Main ()

{

    Console.Write(convert0To5(10120)); 


  
// Этот код предоставлен Раджем

PHP

<?php
// PHP программа для замены всех 0 на 5
// в данном целом числе

  
// Рекурсивная функция для замены всех 0
// с 5 с целым числом. Не работает, если
// данное число равно 0

function convert0to5rec($num)

{

  

    // Базовый случай для прекращения рекурсии

    if ($num == 0)

        return 0;

  

    // Извлечь последнюю цифру и

    // меняем его при необходимости

    $digit = ($num % 10);

  

    if ($digit == 0)

        $digit = 5;

  

    // Преобразовать оставшиеся цифры и добавить

    // последняя цифра

    return convert0to5rec((int)($num / 10)) * 

                                10 + $digit;

}

  
// Он обрабатывает от 0 до 5 вызовов convert0to5rec ()
// для других номеров

function convert0to5($num)

{

    if ($num == 0)

        return 5;

    else

        return convert0to5rec($num);

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

$num = 10120;

print(convert0to5($num));

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


Выход:

15125

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

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

Заменить все «0» на «5» во входном целом

0.00 (0%) 0 votes