Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- /*Liczba doskonała to liczba równa sumie swoich podzielników mniejszych od niej samej, np. 1 + 2 + 4 + 7 + 14 = 28. Napisać
- program wypisujący wszystkie liczby doskonałe z przedziału od 1 do zadanej z klawiatury wartości.Obsłużyćwyjątki
- 6 28 496 8128
- for i+2 wypisać liczby do zakresu
- wypisac jeśli podzielniki\
- podzielniki{
- for i++ od 1
- .*/
- namespace zadanie18lecimy
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("program wypisujący wszystkie liczby doskonałe z przedziału od 1 do zadanej z klawiatury wartości");
- long UpRange = verification();
- for(long i = 6; i <= UpRange; i += 2)
- {
- divisors(i);
- }
- }
- static long verification()
- {
- while(true){
- Console.WriteLine("Podaj górny zakres: ");
- long UpRange = long.Parse(Console.ReadLine());
- try
- {
- if (UpRange <= 1)
- {
- throw new IndexOutOfRangeException("Poza zakresem.");
- }
- else
- {
- return UpRange;
- }
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- }
- }
- static void divisors(long ExcNumber)
- {
- long Final = ExcNumber;
- for (long i = 1; i <= ExcNumber / 2; i++)
- if (ExcNumber % i == 0)
- {
- long divisor = i;
- Final = Final - divisor;
- }
- if (Final == 0) Console.WriteLine(ExcNumber);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement