Untitled
unknown
plain_text
9 months ago
25 kB
16
Indexable
using System.Security.Cryptography;
using static System.Runtime.InteropServices.JavaScript.JSType;
using System.Numerics;
using System.Collections;
namespace SensownaNazwaProjektu
{
internal class Program
{
static void Task1()
{
Console.WriteLine("Task 1 executed: Performing Calculation.");
string a;
float aa;
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = float.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
string b;
float bb;
while (true)
{
Console.WriteLine("Podaj liczbę b");
b = Console.ReadLine();
try
{
bb = float.Parse(b);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
float res = (aa * aa + bb) / (aa + bb) * (aa + bb);
// Check if the result is NaN
if (float.IsNaN(res))
{
Console.WriteLine("Proba dzielenia przez zero");
}
else
{
Console.WriteLine($"Wartość wyrażenia wynosi: {res:F2}");
}
}
static void Task2()
{
Console.WriteLine("Task 2 executed: Performing another operation.");
string a;
double aa;
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = double.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
string b;
double bb;
while (true)
{
Console.WriteLine("Podaj liczbę b");
b = Console.ReadLine();
try
{
bb = double.Parse(b);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
string c;
double cc;
while (true)
{
Console.WriteLine("Podaj liczbę c");
c = Console.ReadLine();
try
{
cc = double.Parse(c);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
if (cc > 0)
{
double ccresg = aa * aa + bb;
if (double.IsNaN(ccresg))
{
Console.WriteLine("Proba dzielenia przez zero");
}
else
{
Console.WriteLine($"Wartość wyrażenia wynosi: {ccresg:F2}");
}
}
else if (cc < 0)
{
double ccresl = aa - bb * bb;
// Check if the result is NaN
if (double.IsNaN(ccresl))
{
Console.WriteLine("Proba dzielenia przez zero");
}
else
{
Console.WriteLine($"Wartość wyrażenia wynosi: {ccresl:F2}");
}
}
else
{
double ccreseq = 1 / (aa - bb);
// Check if the result is NaN
if (double.IsNaN(ccreseq))
{
Console.WriteLine("Proba dzielenia przez zero");
}
else
{
Console.WriteLine($"Wartość wyrażenia wynosi: {ccreseq:F2}");
}
}
}
static void Task3()
{
Console.WriteLine("Task 3 executed: Performing data processing.");
string a;
uint aa;
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = uint.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
string b;
uint bb;
while (true)
{
Console.WriteLine("Podaj liczbę b");
b = Console.ReadLine();
try
{
bb = uint.Parse(b);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
while (aa != bb)
{
if (aa > bb)
{
aa = aa - bb; // Subtract b from a
}
else
{
bb = bb - aa; // Subtract a from b
}
}
Console.WriteLine($"GCE równe: {aa:F2}");
}
static void Task4()
{
string a;
int aa;
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = int.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
int sum = 0;
while (aa > 0)
{
sum += aa % 10;
aa /= 10;
}
Console.WriteLine("The number is: " + sum);
}
static void Task5()
{
string a;
BigInteger aa;
static BigInteger SqrtBigInteger(BigInteger n)
{
if (n == 0) return 0;
BigInteger x = n;
BigInteger y = (n + 1) / 2;
while (y < x)
{
x = y;
y = (n / y + y) / 2;
}
return x;
}
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = BigInteger.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
if (aa <= 1)
Console.WriteLine("Liczba pierwsza");
if (aa == 2)
Console.WriteLine("Liczba pierwsza");
if (aa % 2 == 0)
Console.WriteLine("Nie liczba pierwsza");
BigInteger limit = SqrtBigInteger(aa);
for (BigInteger i = 3; i <= limit; i += 2)
{
// Używamy operacji modulo, aby sprawdzić, czy liczba jest podzielna przez i
if (aa % i == 0)
{
Console.WriteLine("Nie liczba pierwsza");
return;
}
}
Console.WriteLine("liczba pierwsza");
}
static void Task6()
{
string a;
int aa;
while (true)
{
Console.WriteLine("Podaj liczbę a");
a = Console.ReadLine();
try
{
aa = int.Parse(a);
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono liczbę w złym formacie");
}
catch (OverflowException)
{
Console.WriteLine("Wprowadzona liczba jest poza dopuszczalnym zakresem");
}
catch (ArgumentNullException)
{
Console.WriteLine("Napotkano koniec strumienia");
}
catch (ArgumentOutOfRangeException)
{
Console.WriteLine("Wysokość choinki musi być liczbą większą niż 0.");
}
Console.WriteLine("Spróbuj jeszcze raz");
}
for (int i = 1; i <= aa; i++)
{
int stars = 2 * i - 1;
// Obliczanie liczby spacji przed gwiazdkami (wyrównanie do środka)
int spaces = aa - i;
// Wypisywanie spacji i gwiazdek
Console.WriteLine(new string(' ', spaces) + new string('*', stars));
}
// Pień choinki (2 linie)
for (int i = 0; i < 2; i++)
{
// Wypisujemy pień (1 gwiazdka w środku)
Console.WriteLine(new string(' ', aa - 1) + "*");
}
}
static void Task7()
{
static int[,] ReadMatrix()
{
int size = 0;
// Wczytanie rozmiaru macierzy
while (true)
{
Console.WriteLine("Podaj rozmiar macierzy kwadratowej:");
try
{
size = int.Parse(Console.ReadLine());
if (size <= 0)
{
Console.WriteLine("Rozmiar macierzy musi być większy od 0.");
continue;
}
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono niepoprawny format liczby. Spróbuj ponownie.");
}
}
int[,] matrix = new int[size, size];
// Wczytanie elementów macierzy
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
while (true)
{
try
{
Console.Write($"Podaj element [{i},{j}]: ");
matrix[i, j] = int.Parse(Console.ReadLine());
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono niepoprawny format liczby. Spróbuj ponownie.");
}
}
}
}
return matrix;
}
static void CompareSumsAboveBelowDiagonal(int[,] matrix)
{
int size = matrix.GetLength(0);
int sumAbove = 0, sumBelow = 0;
// Obliczanie sumy powyżej głównej przekątnej
for (int i = 0; i < size; i++)
{
for (int j = i + 1; j < size; j++) // Elementy powyżej przekątnej
{
sumAbove += matrix[i, j];
}
}
// Obliczanie sumy poniżej głównej przekątnej
for (int i = 1; i < size; i++)
{
for (int j = 0; j < i; j++) // Elementy poniżej przekątnej
{
sumBelow += matrix[i, j];
}
}
// Porównanie sum
if (sumAbove > sumBelow)
{
Console.WriteLine("Suma elementów powyżej głównej przekątnej jest większa.");
}
else if (sumAbove < sumBelow)
{
Console.WriteLine("Suma elementów poniżej głównej przekątnej jest większa.");
}
else
{
Console.WriteLine("Suma elementów powyżej i poniżej głównej przekątnej jest równa.");
}
}
int[,] matrix = ReadMatrix(); // Wczytanie macierzy
CompareSumsAboveBelowDiagonal(matrix);
}
static void Task8()
{
static int GetNumberOfElements()
{
int numElements = 0;
while (true)
{
Console.WriteLine("Podaj liczbę elementów do wprowadzenia (w zakresie 1-10):");
try
{
numElements = int.Parse(Console.ReadLine());
if (numElements >= 1 && numElements <= 10)
{
break;
}
else
{
Console.WriteLine("Liczba elementów musi być w zakresie 1-10. Spróbuj ponownie.");
}
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono niepoprawny format liczby. Spróbuj ponownie.");
}
}
return numElements;
}
// Funkcja do wczytywania liczb całkowitych od użytkownika
static int[] GetNumbers(int numElements)
{
int[] numbers = new int[numElements];
for (int i = 0; i < numElements; i++)
{
while (true)
{
Console.WriteLine($"Podaj liczbę {i + 1}:");
try
{
numbers[i] = int.Parse(Console.ReadLine());
break;
}
catch (FormatException)
{
Console.WriteLine("Wprowadzono niepoprawny format liczby. Spróbuj ponownie.");
}
}
}
return numbers;
}
// Funkcja do sortowania liczb
static void SortAndDisplay(int[] numbers)
{
Array.Sort(numbers); // Sortowanie rosnąco
Console.WriteLine("Posortowane liczby:");
foreach (var number in numbers)
{
Console.WriteLine(number);
}
}
int numElements = GetNumberOfElements(); // Wczytanie liczby elementów
int[] numbers = GetNumbers(numElements); // Wczytanie liczb
SortAndDisplay(numbers);
}
static void Task9()
{
static int SumOfDigits(int number)
{
int sum = 0;
while (number > 0)
{
sum += number % 10; // Dodaj ostatnią cyfrę
number /= 10; // Usuń ostatnią cyfrę
}
return sum;
}
// Funkcja główna do obliczenia sumy cyfr dla każdej liczby z ciągu
static void CalculateSumOfDigitsForEachNumber()
{
try
{
Console.WriteLine("Podaj ciąg liczb naturalnych oddzielonych spacjami:");
// Wczytanie ciągu liczb
string input = Console.ReadLine();
// Podzielenie ciągu na liczby
string[] numbers = input.Split(' ');
foreach (var numStr in numbers)
{
try
{
// Konwersja liczby z tekstu na int
int number = int.Parse(numStr);
// Sprawdzenie, czy liczba jest liczbą naturalną (większą od 0)
if (number < 0)
{
Console.WriteLine("Liczba musi być liczbą naturalną (większą lub równą 0).");
continue;
}
// Obliczanie sumy cyfr
int sum = SumOfDigits(number);
Console.WriteLine($"Suma cyfr liczby {number} wynosi: {sum}");
}
catch (FormatException)
{
Console.WriteLine($"'{numStr}' nie jest poprawną liczbą całkowitą.");
}
}
}
catch (Exception ex)
{
Console.WriteLine($"Wystąpił błąd: {ex.Message}");
}
}
CalculateSumOfDigitsForEachNumber();
}
static void Task10()
{
static void ReverseStrings()
{
try
{
ArrayList inputStrings = new ArrayList();
// Wczytanie łańcuchów aż do pustej linii
while (true)
{
Console.WriteLine("Wprowadź łańcuch (pusta linia kończy):");
string input = Console.ReadLine();
if (string.IsNullOrEmpty(input)) // Pusta linia kończy wprowadzanie
break;
// Dodanie łańcucha do listy
inputStrings.Add(input);
}
// Sprawdzenie, czy są jakieś wprowadzone łańcuchy
if (inputStrings.Count == 0)
{
Console.WriteLine("Nie wprowadzono żadnych łańcuchów.");
return;
}
// Odwrócenie kolejności łańcuchów
inputStrings.Reverse();
Console.WriteLine("Odwrócone łańcuchy:");
// Wyświetlanie odwróconej listy
foreach (string str in inputStrings)
{
Console.WriteLine(str);
}
}
catch (Exception ex)
{
Console.WriteLine($"Wystąpił błąd: {ex.Message}");
}
}
ReverseStrings();
}
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("Choose a task to run (1, 2, 3, 4, 5, 6, 7, 8, 9 or 10):");
string choice = Console.ReadLine();
switch (choice)
{
case "1":
Task1();
break;
case "2":
Task2();
break;
case "3":
Task3();
break;
case "4":
Task4();
break;
case "5":
Task5();
break;
case "6":
Task6();
break;
case "7":
Task7();
break;
case "8":
Task8();
break;
case "9":
Task9();
break;
case "10":
Task10();
break;
default:
Console.WriteLine("Invalid choice.");
break;
}
}
}
}
}
Editor is loading...
Leave a Comment