Bağımsız değişken numarası n olarak alan ve 1'den n'ye kadar olan tüm sayılara bölünebilen en düşük kullanılabilir sayıyı (dize olarak) döndüren bir işlev yazmam gerekiyor. örnek n = 4 ise, işlev 12/4 12/3 12/2 12/1 tam sayı olduğu için 12 döndürür.
sayılar 19'dan küçük olduğunda iyi çalışan bir işlev yazdım.. 19'un üzerinde hesaplama süresi çok uzuyor. birisi bana bu işlevin mekanizmasını daha hızlı yapmak için nasıl daha iyi hale getireceğime dair bir ipucu verebilir mi
public static string Smallest(int n)
{
int good = 0;//will hold number of times we got divide with no remianders
int num = n;//smallest possible number is n
while (true)
{
good = 0;
for (int i=n; i>=1; i--)
{
if (num % i ==0) good++;//meaning we got zero remainder for the divide
if (good == n) return num.ToString();//num of times we got zero remainders == n.
}
num++;
}
}