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

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ı:

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;
    }
}

 

algoritmaalgoritma sorular
Comments (0)
Add Comment