Algoritma Sorusu Karesi Alınan Sayının Rakamları Çarpımı

0 554

Algoritma soruları yazımızdaki yorumlar kısmında sorulan Klavyeden girilen sayının önce karesini alan bulduğun sonucun rakamları çarpımını ekrana yazdıran programın algoritması ve akış şeması sorusunun cevabı.

Akış şeması:

Karesi alınan sayının rakamlarının çarpımı

Sorunun algoritması:

Fonksiyon Ana
    Yaratmak Tamsayı sayi, kare, carpim
    
    Atama carpim = 1
    Giriş sayi
    Atama kare = sayi * sayi
    While kare >0
        Atama carpim = carpim * (kare %10)
        Atama kare = kare /10
    Son
    Çıktı carpim
Son

Python ile yapımı:

carpim = 1
sayi = int(input())
kare = sayi * sayi
while kare > 0:
    carpim = carpim * (kare % 10)
    kare = float(kare) / 10
print(carpim)

C++ ile yapımı:

#include <iostream>
#include <sstream>
#include <string>
#include <cstdlib>
#include <cmath>

using namespace std;

// Headers
string toString (double);
int toInt (string);
double toDouble (string);

int main() {
    int sayi, kare, carpim;
    
    carpim = 1;
    cin >> sayi;
    kare = sayi * sayi;
    while (kare > 0) {
        carpim = carpim * (kare % 10);
        kare = (int) ((double) kare / 10);
    }
    cout << carpim << endl;
    return 0;
}

// The following implements type conversion functions.
string toString (double value) { //int also
    stringstream temp;
    temp << value;
    return temp.str();
}

int toInt (string text) {
    return atoi(text.c_str());
}

double toDouble (string text) {
    return atof(text.c_str());
}

 

Java ile yapılması:

import java.util.*;
import java.lang.Math;

public class JavaApplication {
    private static Scanner input = new Scanner(System.in);

    public static void main(String[] args) {
        int sayi, kare, carpim;
        
        carpim = 1;
        sayi = input.nextInt();
        kare = sayi * sayi;
        while (kare > 0) {
            carpim = carpim * (kare % 10);
            kare = (int) ((double) kare / 10);
        }
        System.out.println(carpim);
    }
}

 

C# ile yapımı:

using System;

public class MyProgram
{
    public static void Main(string[] args)
    {
        int sayi, kare, carpim;
        
        carpim = 1;
        sayi = (int) readValue();
        kare = sayi * sayi;
        while (kare > 0)
        {
            carpim = carpim * (kare % 10);
            kare = (int) ((double) kare / 10);
        }
        Console.WriteLine(carpim);
    }
    
    // .NET can only read single characters or entire lines from the console.
    // The following function safely reads a double value.
    private static double readValue()
    {
        double result;
        while (!double.TryParse(Console.ReadLine(), out result));
        return result;
    }
}

 

Cevap bırakın

E-posta hesabınız yayımlanmayacak.

Bu web sitesi deneyiminizi geliştirmek için çerezleri kullanır. Bununla iyi olduğunuzu varsayacağız, ancak isterseniz vazgeçebilirsiniz. Kabul etmek Mesajları Oku