Verilen bir sayının faktöriyelini hesaplayan algoritmayı yazınız.
n
sayısının değerini girmek.- Bir döngü kullanarak
n!
değerini hesaplamak. n!
değerini yazdırmak
n! = 1*2*3 …. (n-2)*(n-1)*n
veyan! = n*(n-1)*(n-2) … 2*1
olduğu bellidir.f
diye bir değişken tanımlayabiliriz, başlangıç değeri 1 olsun, ve onu 2,3 ….n
ye kadar sayılarıyla çarpabiliriz, bunu yapmak içini
sayacı tanımlanır 2’denn
ye kadar değer alır (i
nin her arttığındax
le çarpılacak şekilde).
i
,f
,n
tanımlanması.n
nin değerinin girilmesi.n!
i hesaplayan döngünün oluşturulması.f
nin değerinin yazdırılması.
#include <iostream>
using namespace std;
int main()
{
int i, n, f = 1; // “i”, “f”, “n” tanımlanması
cout << "n=";
cin >> n; // “n”nin değerinin girilmesi
// n!’i hesaplayan döngünün oluşturulması
// “i=1” olduğunda sonucu etkilemeyeceği için “i=2”den başlıyoruz
for (i = 2; i <= n; i++)
f = f * i; // “f” değerini i sayacının değerleriyle çarpacak işlem
cout << "n!=" << f; // “f”nin değerinin yazdırılması
}
f = 1 # “f”nin tanımlanması
n = int(input("n= ")) # “n”nin değerinin girilmesi
# n!’i hesaplayan döngünün oluşturulması.
# “i=1” olduğunda sonucu etkilemeyeceği için “i=2”den başlıyoruz.
# range() foksiyonun özelliğinden dolayı range fonsiyonu bitiş değeri
# n+1 olarak vereceğiz.
for i in range(2, n+1):
f = f * i # “f” değerini i sayacının değerleriyle çarpacak işlem
print("n!=", f) # “f”nin değerinin yazdırılması
import java.util.*;
public class Faktoryel {
public static void main(String arg[]) {
Scanner input = new Scanner(System.in);
int i, n, f = 1; // “i”, “f”, “n” tanımlanması
System.out.print("n=");
n = input.nextInt(); // “n”nin değerinin girilmesi
// n!’i hesaplayan döngünün oluşturulması
// “i=1” olduğunda sonucu etkilemeyeceği için “i=2”den başlıyoruz
for (i = 2; i <= n; i++)
f = f * i; // “f” değerini i sayacının değerleriyle çarpacak işlem
System.out.println("n!=" + f); // “f”nin değerinin yazdırılması
input.close();
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Faktoryel{
class Program{
static void Main(string[] args){
int i, x, f = 1;
Console.WriteLine("n=");
x = Convert.ToInt32(Console.ReadLine());
for (i = 2; i <= x; i++)
f = f * i;
Console.WriteLine("n!=" + f);
Console.ReadLine();
}
}
}
n=5
n!=120
i=1
olduğunda sonucu etkilemeyeceği içini=2
den başlıyoruz.f
değerinii
sayacının değerleriyle çarpacak işlem.