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