C# 1-100 arasındaki çift sayıların toplamını mükemmel sayı olup olmadığını bulma

{{ page.title }}

Algoritma

  1. Başla
  2. i=0,top=0,y=0 değişkenlerini al
  3. top=top+(2+i) işlemini yap
  4. Eğer (i+2)=100 ise devam et, değilse i=i+2, 3’e git
  5. i=1 işlemini yap
  6. Eğer top%i=0 ise y=y+i değilse devam et
  7. Eğer top=i+1 ise devam et değilse i=i+1,6ya git
  8. Eper top=y ise yazdır
  9. mükkemeldir değilse mükkemel değil
  10. Bitir

Bu soruda şunu bilmeliyizki 1 ile 100 arasında tarzındaki sorularda 1 den 100 e kadar program kodumuz istediğimiz yerden döngüye girecektir. Bunda i değerimiz yani bir sayacımız olacak , değer her defasında uzayacaktır.

C# böyle sorularda for döngüsünü sever bir de burda fazladan bir (sayi%2) eğeri koymak yerine, zaten çift sayıları bildiğimizden hemen top=top+2 diyerek, çiftleri direkt döngüye eklememizi uygun olacaktır sonra bu toplama (top değişkenin içindeki) mükemmel sayımı diye bakmalı.

Kod Yapısı

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace dmg
{
class Program
{
static void Main(string[] args)
{
int i; int top = 0;
int y = 0;
for ( i = 0; i <= 98; i++)
{
top = top + (2 + i);
}
for ( i = 1; i <= (top/2); i++)
{
if ((top%i)==0)
{
y = y + i;
}
}
if (top==y)
{
Console.WriteLine("mükemmel");
}
else
{
Console.WriteLine("mükemmel değil");
}
Console.ReadLine();
}
}
}

BOT Benson Topluluk kurucusu ve bir yazılımcı.