Розв'язки до задач
Table of Contents
Тема 4. Типи даних та змінні
Лістинг Y.4.1. Рішення до задачі 4.1
//Для виведення тексту українською мовою
Console.OutputEncoding = Encoding.Unicode;
Console.WriteLine("\"Саме знання нікому їсти не дасть.\"\n\t\t\t\\І.Я.Франко\\");
Тема 5. Розгалуження та цикли
Лістинг Y.5.1. Рішення до задачі 5.1
Console.OutputEncoding = Encoding.Unicode;
Console.Write("Введіть нижню межу:");
int low = int.Parse(Console.ReadLine());
Console.Write("Введіть верхню межу:");
int high = int.Parse(Console.ReadLine());
int mult = 1;
for (int i = low; i <= high; i++)
{
mult *= i;
}
Console.WriteLine($"Mult: {mult}");
Також код алгоритму можна скоротити наступним чином:
int mult = 1;
for (; low <= high; mult *= low++) ;
Console.WriteLine($"Mult: {mult}");
Лістинг Y.5.3. Рішення до задачі 5.3
Console.WriteLine($"x\ty");
for (int x = 10; x <= 100; x++)
{
if (x % 7 == 0)
{
double y = Math.Pow(x + 5, 3) / Math.Sqrt(x + 1);
Console.WriteLine($"{x}\t{y:f2}");
}
}
Лістинг Y.5.4. Рішення до задачі 5.4
Console.WriteLine("x\ty");
for(int x = 100; x <= 200; x+=10)
{
double y = Math.Pow(Math.Cos(Math.Pow(x, 2)), 3) / Math.Sqrt(x - Math.Log(x));
Console.WriteLine("{0}\t{1:f4}", x, y > 0 ? " " + Math.Round(y, 4): y);
}
Лістинг Y.5.5. Рішення до задачі 5.5
Console.Write("Enter number:\t");
int num = int.Parse(Console.ReadLine());
for (int i = 1; i < 10; i++)
Console.WriteLine($"{num} x {i} = {num*i}");
Лістинг Y.5.10. Рішення до задачі 5.10
for (int i = 90; i >= 5; i--)
if(i % 3 == 0 && i % 5 != 0 && i % 2 == 1)
Console.WriteLine(i);
Лістинг Y.5.11. Рішення до задачі 5.11
while (true)
{
Console.OutputEncoding = Encoding.Unicode;
Console.Write("\n--- МЕНЮ ---\n[+] - Додати\n[-] - Відняти\n[*] - Множити\n" +
"[/] - Ділити\n[0] - Вийти з програми\n\nВаш вибір :>\t");
string choise = Console.ReadLine();
Console.Write("\nВведіть число 1:\t");
double num1 = double.Parse(Console.ReadLine());
Console.Write("Введіть число 2:\t");
double num2 = double.Parse(Console.ReadLine());
switch (choise)
{
case "+":
double sum = num1 + num2;
Console.WriteLine($"\nРезультат: {sum}");
break;
default:
Console.WriteLine("Помилка! Введіть операцію або 0.");
break;
}
}
Лістинг Y.5.14. Рішення до задачі 5.14
Фігура 1
Console.OutputEncoding = Encoding.Unicode;
Console.Write("Введіть кількість рядків: \t");
int rows = int.Parse(Console.ReadLine());
Console.Write("Введіть кількість стовпців: \t");
int cols = int.Parse(Console.ReadLine());
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
Фігура 2
Console.OutputEncoding = Encoding.Unicode;
Console.Write("Введіть кількість рядків: \t");
int rows = int.Parse(Console.ReadLine());
Console.Write("Введіть кількість стовпців: \t");
int cols = int.Parse(Console.ReadLine());
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
if (i == 0 || i == rows - 1 || j == 0 || j == cols - 1)
Console.Write("*");
else
Console.Write(" ");
}
Console.WriteLine();
}
Фігура 3
Console.OutputEncoding = Encoding.Unicode;
Console.Write("Введіть кількість: \t");
int count = int.Parse(Console.ReadLine());
for (int i = count; i > 0; i--)
{
for (int j = 0; j < i; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
Лістинг Y.5.16. Рішення до задачі 5.16
Console.OutputEncoding = Encoding.Unicode;
Random r = new Random();
int number = r.Next(1, 10000);
Console.WriteLine("Привіт! Я загадав число у діапазоні [1; 10000).");
// ставимо @ перед параметром, оскільки try є ключовим словом у C#
int @try = 0;
while (true)
{
++@try;
Console.Write("\nЯке число я загадав?\t>");
int userNumber = int.Parse(Console.ReadLine());
if (userNumber > number)
{
Console.WriteLine("PC > Неправильно. Моє число є меншим.");
continue;
}
if (userNumber < number)
{
Console.WriteLine("PC > Неправильно. Моє число є більшим.");
continue;
}
if (userNumber == number)
{
Console.WriteLine("PC > Вітаю! Ти вгадав за {0} спроб", @try);
}
}
Тема 6. Масиви
Тема 7. Перелічувані типи та структури
Тема 8. Об’єктно-орієнтовне програмування
Список використаних джерел
- Albahari, J., & Albahari, B. (2012). C# 5.0 in a Nutshell, Fifth Edition. 1005 Gravenstein Highway North, Sebastopol, USA: O’Reilly Media, Inc.
- Cardelli, L., & Wegner, P. (December 1985 p.). On Understanding Types, Data Abstraction, and Polymorphism. ACM Computing 1. Surveys, 17(4), сс. 149-154. Отримано з http://lucacardelli.name/Papers/OnUnderstanding.A4.pdf
- Kort, W. d. (2013). Exam Ref 70-483: Programming in C#. Sebastopol, California 95472: O’Reilly Media, Inc.
- MSDN. (без дати). Отримано з Microsoft Developer Network: http://msdn.microsoft.com/
- Биллиг, А. (2005). Основы программирования на C#. Москва, Россия: НОУ ИНТУИТ.
- Нейгел, К. И. (2011). С# 4.0 и платформа .NET 4 для профессионалов. Москва, Россия: ООО “И.Д. Вильямс”.
- Павловская, Т. (2009). С#. Программирование на языке высокого уровня. Учебник для вузов. СПб, Россия: Питер.
Додаткові матеріали для завантаження
Лекція у форматі DOCX Завантажити(у розробці)Лекція у форматі PDF Завантажити(у розробці)- Діаграми до лекції у форматі
draw.io
наgithub
Перейти
Дорогі друзі, якщо Ви помітили, що для написання матеріалів використані джерела, які я не вказав - прошу надіслати мені інформацію на пошту.
Дякую.