Рубрики

Печатать квадраты первых n натуральных чисел без использования *, / и —

Если задано натуральное число n, выведите квадраты первых n натуральных чисел без использования *, / и -.

Примеры :

Input:  n = 5
Output: 0 1 4 9 16

Input:  n = 6
Output: 0 1 4 9 16 25


Мы настоятельно рекомендуем свернуть браузер и попробовать это в первую очередь.

Метод 1: Идея состоит в том, чтобы вычислить следующий квадрат, используя предыдущее квадратное значение. Рассмотрим следующее соотношение между квадратом x и (x-1). Мы знаем, что квадрат (x-1) равен (x-1) 2 — 2 * x + 1. Мы можем написать x 2 как

x2 = (x-1)2 + 2*x - 1 
x2 = (x-1)2 + x + (x - 1)

При написании итеративной программы мы можем отслеживать предыдущее значение x и добавлять текущие и предыдущие значения x к текущему значению квадрата. Таким образом, мы даже не используем оператор «-».

Ниже приведена реализация вышеуказанного подхода:

C ++

// C ++ программа для печати квадратов первых 'n' натуральных чисел
// без использования *, / и -
#include<iostream>

using namespace std;

  

void printSquares(int n)

{

    // Инициализируем 'квадрат' и предыдущее значение 'х'

    int square = 0, prev_x = 0;

  

    // Расчет и печать квадратов

    for (int x = 0; x < n; x++)

    {

        // Обновить значение квадрата, используя предыдущее значение

        square = (square + x + prev_x);

  

        // Распечатать квадрат и обновить предысторию для следующей итерации

        cout << square << " ";

        prev_x = x;

    }

}

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

int main()

{

   int n = 5;

   printSquares(n);

}

Джава

// Java-программа для печати квадратов
// из первых 'n' натуральных чисел
// без использования *, / и

import java.io.*;

  

class GFG 

{

static void printSquares(int n)

{

    // Инициализируем 'квадрат' и

    // предыдущее значение 'x'

    int square = 0, prev_x = 0;

  

    // Рассчитать и

    // печатаем квадраты

    for (int x = 0; x < n; x++)

    {

        // Обновить значение квадрата

        // используя предыдущее значение

        square = (square + x + prev_x);

  

        // Распечатать квадрат и обновить

        // предыдущая для следующей итерации

        System.out.print( square + " ");

        prev_x = x;

    }

}

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

public static void main (String[] args)

{

    int n = 5;

    printSquares(n);

}
}

  
// Этот код добавлен
// от akt_mit

Python 3

# Программа Python 3 для печати квадратов первой
# 'n' натуральные числа без использования *, / и -

def printSquares(n):

  

    # Инициализировать 'квадрат' и предыдущий

    # значение 'x'

    square = 0; prev_x = 0;

  

    # Расчет и печать квадратов

    for x in range(0, n):

          

        # Обновить значение квадрата, используя

        # предыдущее значение

        square = (square + x + prev_x)

  

        # Печать квадрата и обновление пред.

        # для следующей итерации

        print(square, end = " ")

        prev_x = x

  
Код водителя

n = 5;

printSquares(n);

  
# Этот код добавлен
# от Akanksha Rai

C #

// C # программа для печати квадратов
// из первых 'n' натуральных чисел
// без использования *, / и

using System;

  

public class GFG{

      

    static void printSquares(int n) 

    // Инициализируем 'квадрат' и

    // предыдущее значение 'x'

    int square = 0, prev_x = 0; 

  

    // Рассчитать и

    // печатаем квадраты

    for (int x = 0; x < n; x++) 

    

        // Обновить значение квадрата

        // используя предыдущее значение

        square = (square + x + prev_x); 

  

        // Распечатать квадрат и обновить

        // предыдущая для следующей итерации

        Console.Write( square + " "); 

        prev_x = x; 

    

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

      

    static public void Main (){

        int n = 5; 

        printSquares(n); 

    

  
// Этот код добавлен
// от ajit

PHP

<?php
// PHP программа для печати квадратов
// из первых 'n' натуральных чисел
// без использования *, / и -

  

function printSquares($n)

{

      

    // Инициализируем 'квадрат' и

    // предыдущее значение 'x'

    $square = 0; $prev_x = 0;

  

    // Рассчитать и

    // печатаем квадраты

    for ($x = 0; $x < $n; $x++)

    {

          

        // Обновить значение квадрата

        // используя предыдущее значение

        $square = ($square + $x + $prev_x);

  

        // Распечатать квадрат и обновить

        // предыдущая для следующей итерации

        echo $square, " ";

        $prev_x = $x;

    }

}

  

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

    $n = 5;

    printSquares($n);

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


Выход:

0 1 4 9 16

Способ 2: сумма первых n нечетных чисел — это квадраты натуральных чисел от 1 до n. Например, 1, 1 + 3, 1 + 3 + 5, 1 + 3 + 5 + 7, 1 + 3 + 5 + 7 + 9,….

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

C ++

// C ++ программа для печати квадратов первых 'n' натуральных чисел
// без использования *, / и -
#include<iostream>

using namespace std;

  

void printSquares(int n)

{

    // Инициализируем квадрат и первое нечетное число

    int square = 0, odd = 1;

  

    // Расчет и печать квадратов

    for (int x = 0; x < n; x++)

    {

        // Распечатать квадрат

        cout << square << " ";

  

        // Обновляем квадрат и нечёт

        square = square + odd;

        odd = odd + 2;

    }

}

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

int main()

{

   int n = 5;

   printSquares(n);

}

Джава

// Java-программа для печати
// квадраты первых 'n'
// натуральные числа без
// используя *, / и -

import java.io.*;

  

class GFG 

{

static void printSquares(int n)

{

    // Инициализируем 'квадрат'

    // и первый нечетный номер

    int square = 0, odd = 1;

  

    // Рассчитать и

    // печатаем квадраты

    for (int x = 0; x < n; x++)

    {

        // Распечатать квадрат

        System.out.print(square + 

                           " " );

  

        // Обновляем квадрат

        // и "странный"

        square = square + odd;

        odd = odd + 2;

    }

}

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

public static void main (String[] args) 

{

    int n = 5;

    printSquares(n);

}
}

  
// Этот код добавлен
// от ajit

python3

# Python3 программа для печати квадратов
# первых 'n' натуральных чисел
# без использования *, / и -

  

def printSquares(n):

      

    # Инициализировать 'квадрат' и

    # первый нечетный номер

    square = 0

    odd = 1

      

    # Расчет и печать квадратов

    for x in range(0 , n):

          

        # Печать квадрата

        print(square, end= " ")

          

        # Обновить 'квадрат' и 'нечетный'

        square = square + odd

        odd = odd + 2

  
Код водителя

n = 5

printSquares(n)

  
# Этот код добавлен
# Раджпут-Джи

C #

// C # программа для печати квадратов первых 'n'
// натуральные числа без использования *, / и -

using System;

  

class GFG 

{

static void printSquares(int n)

{

    // Инициализируем 'квадрат'

    // и первый нечетный номер

    int square = 0, odd = 1;

  

    // Рассчитать и

    // печатаем квадраты

    for (int x = 0; x < n; x++)

    {

        // Распечатать квадрат

        Console.Write(square + " " );

  

        // Обновляем квадрат

        // и "странный"

        square = square + odd;

        odd = odd + 2;

    }

}

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

public static void Main () 

{

    int n = 5;

    printSquares(n);

}
}

  
// Этот код добавлен
// по inder_verma ..

PHP

<?php
// PHP программа для печати квадратов
// из первых 'n' натуральных чисел
// без использования *, / и -

function printSquares($n)

{

    // Инициализируем 'квадрат' и

    // первый нечетный номер

    $square = 0; $odd = 1;

  

    // Расчет и печать квадратов

    for ($x = 0; $x < $n; $x++)

    {

        // Распечатать квадрат

        echo $square , " ";

  

        // Обновляем квадрат и нечёт

        $square = $square + $odd;

        $odd = $odd + 2;

    }

}

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

$n = 5;

printSquares($n);

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


Выход :

0 1 4 9 16

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

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

Печатать квадраты первых n натуральных чисел без использования *, / и —

0.00 (0%) 0 votes