c# ta metot kullanarak faktöriyel hesaplama işlemi yaptım. fakat istediğim , istediğim kadar sayıyı aralarına virgül koyarak yazmak ve enter tuşuna bastığımda yazdığım sayıların hepsinin sırayla faktöriyelini hesaplamak.
Console.Write("Değer dizisi giriniz: ");
string value = Console.ReadLine();
string[] array = value.Split(",");
kodum bu şekilde başlayacak inte dönüştürüp dizi tanımlamam gerekiyor sanırım ama tıkandım yardımcı olursanız çok sevinirim.

Cevap :

Merhaba, ilgili sorunuzu C++ dilinde koda döktüm. Diller benzer olduğundan, kullanılan tekniği kendi kodunuza uyarlayıp yazabilirsiniz.

Başarılar dilerim!

Kod:

#include <bits/stdc++.h>

typedef size_t st;

std::vector<int> numbers,facc;

std::string lim = ",";

st ndex = 0;

std::string number;

int main(int argc, char* argv[]) {

   std::string x;

   std::cout << "Lutfen sayilari, aralarinda virgul olacak sekilde giriniz: "; std::cin >> x;

   while ((ndex = x.find(lim)) != std::string::npos) {

       number = x.substr(0, ndex);

       numbers.push_back(stoi(number));

       x.erase(0, ndex + lim.length());

   }

   

   //Faktoriyel aldirma

   for(int i=0;i<numbers.size();i++) {

       int temp=1;

       for(int j=1;j<=numbers.at(i);j++) {

           temp *=j;

       }

       facc.push_back(temp);

   }

   std::cout << std::endl;

   for(auto print:facc) {

       std::cout << print << ", ";

   }

   std::cout << std::endl;

   return 0;

}

Görseli göster Belalimod