Задачи
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи 36,37. Не решены: 1-35,38-43. Задачи Z4.1. Даны вещественные…
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи 3,7-9. Не решены: 1,2,4-6,10-34. Задачи Z3.1. Даны натуральное…
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 1-5, 8, 9, 12, 21-23, 28 (решения в…
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 1-9, 12. Не решены: 10-11, 13. Задачи Z1.1….
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 2-4,7. Не решены: 1,5,6,8-28. Задачи W5.1. Имеется фрагмент…
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 2. Не решены: 1,3-8. Задачи W4.1.Дано натуральное число….
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 1. Не решены: 2-34. Задачи W3.1. Дано натуральное число….
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения. Решены задачи: 1,2,5,6. Не решены: 3-4, 7-25. Задачи W2.1. Имеется…
Задачи по основам языка C# с решениями
Эти задачи (с решениями) позволят начинающим освоить операторы и базовые конструкции языка C#.
Они позволяют проверить такие навыки программирования, как ввод/вывод данных, целочисленную арифметику, логику и все операторы циклов.
Решения пользователей сайта анализируются и комментируются автором сайта и другими пользователями с позиций эффективности кода.
Задачи на массивы и строки содержатся в Задачнике 2.
Считаю, что очень важна постоянная ПРАКТИКА и ОБСУЖДЕНИЕ результатов.
Присылайте Ваши решения как КОММЕНТАРИИ к каждой странице заданий, обсуждайте другие, может быть, нестандартные решения.
Задачи по темам
NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.
Помощь проекту:
Вы программист, который отвечает за склад, на котором хранится информация, а также за надёжную работу вашей техники на водохранилище. В Вашем распоряжении огромный резервуар на 2 тонны. Но Вы так же в этом хранилище живут рыбы и когда приобретают рыб у Вас также берут немного воды для них, пока их переносят в аквариум к покупателю. И Вам пришёл запрос от нового поставщика, что Вам перелили с главного водохранилища -500 литров воды. Новость хорошая, но вот беда, всем заправляет автоматическая система и она проделывает следующую операцию (Текущее количество воды + полученное количество). Отсюда получается, что по факту у нас будет полное хранилище, но по программе у нас станет на 500 литров меньше и будет запрос на новую партию. Начав копаться в файлах, Вы поняли, что проще будет написать код с нуля и удалили его. Ваша задача написать верный код с чистого листа.
Код с приходом обязан содержать отрицательный показатель.
Задачи на C# с решениями
Основная функция любой задачи — применение на практике полученных знаний. Постоянная практика важна и нужна, как и обсуждение результатов. В этой статье вы найдете решения некоторых задач на языке программирования Си шарп. Будут представлены задачи разной степени сложности, что позволит:
— повторить операторы и базовые условные конструкции языка программирования Си шарп;
— вспомнить такие вещи, как целочисленная арифметика, работа с функциями, ввод и вывод данных, логические операции.
Помните, что каждая из задач может иметь и нестандартное решение, а научить находить такие решения — это тоже важная педагогическая функция практических заданий.
Но прежде чем приводить практические примеры, немного вспомним теорию и расскажем о том, как объявляются методы и функции в языке программирования Си шарп.
Объявление функций и методов
Методы (функции в Си шарп также называют методами) позволяют инкапсулировать поведение и функциональность в объекты, создаваемые в коде. Объявление осуществляется с помощью сигнатуры, состоящей из ряда составных частей:
- модификатор доступа — показывает, откуда метод можно вызвать;
- тип возвращаемого значения. Необходим для указания соответствующего типа возвращаемого значения. Если значение не возвращается, используется тип void;
- идентификатор (имени) метода — идентификатор нужен, чтобы иметь возможность вызывать функцию в коде;
- список аргументов (параметров). Это список параметров, разделяемых запятыми и передаваемых в метод.
Также перечислим модификаторы доступа:
- private — доступ возможен только из содержащего эту функцию класса либо структуры;
- public — доступ разрешен из любого фрагмента кода в приложении;
- protected — доступ есть как из содержащего класса, так и из производных классов;
- internal — доступ разрешен из файлов в рамках одной сборки;
- static — обозначает, что метод — это статический член класса, а не член экземпляра конкретного объекта.
Пример функции в языке программирования Си шарп:
Чтобы вернуть из метода значение, используют оператор return. Если же вместо возвращаемого типа будет ключевое слово void, то вообще не вернется никакое значение.
Вы можете определить функцию в том же самом классе, что и Main() либо же определить ее в каком-нибудь другом классе. Также следует понимать, что все методы в Си шарп являются статическими, а это значит, что разработчик может вызывать их, не создавая класс объекта.
И еще один момент: чтобы функции, которые описываются в одном классе, сделать видимыми в другом классе, их надо описать посредством модификатора доступа public. Если же они вызываются в том же самом классе, то модификатор доступа public не нужен.
Задача № 1
Необходимо написать консольную программу, где пользователь будет вводить с клавиатуры 2 числа. Числа будут сравниваться с последующим выводом в консоль результата этого сравнения (равны ли значения, а если нет, то какое число больше/меньше).
Задача № 2
Теперь несколько усложним ситуацию в создаваемой программе. Пусть пользователь имеет возможность ввести одно число, причем:
— когда значение больше пяти и одновременно с этим меньше десяти, выводится один текст с соответствующим сообщением;
— когда значение не попадает в указанный диапазон, программа его не узнает, выводя другой текст с соответствующим сообщением. Таким образом, алгоритм решения будет несколько отличаться:
Задача № 3
Далее решим задачу сложнее. Представим банк, в котором алгоритм начисления процента по вкладу зависит от суммы вклада. На вход будет подаваться число (сумма вклада). При значении меньше 100, будет начислено 5 %, если значение находится в диапазоне от ста до двухсот — 7 %, если больше — 10 %. Отработав, программа должна вывести общую сумму с начисленными процентами. Для решения этой задачи воспользуемся выражением Convert.ToDouble(Console.ReadLine()) , которое нам пригодится для получения вводимого с клавиатуры числа.
Задача № 4
Напоследок еще немного усложним алгоритм, расширив условия предыдущего примера. Пусть банк регулярно начисляет по всем вкладам не только положенные по договору проценты, но еще и бонусы. И пусть, к примеру, банк решит выполнить доначисление по всем клиентским вкладам в размере 15 единиц без учета суммы. Поменяем программу, отображенную выше, чтобы к итоговой сумме были добавлены еще и бонусы.
Как видите, все получилось!
Текст написан по материалам следующих источников:
- https://labs-org.ru/c-sharp5/;
- http://mycsharp.ru/post/13/2013_05_21_funkcii_v_si-sharp_operator_return.html;
- https://metanit.com/sharp/practice/1.1.php.
Решение задачи на языке си шарп
Напишите консольную программу, в которую пользователь вводит с клавиатуры два числа. А программа сранивает два введенных числа и выводит на консоль результат сравнения (два числа равны, первое число больше второго или первое число меньше второго).
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите первое число: "); int num1 = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введите второе число: "); int num2 = Convert.ToInt32(Console.ReadLine()); if(num1 >num2) < Console.WriteLine("Первое число больше второго"); >else if (num1 < num2) < Console.WriteLine("Первое число меньше второго"); >else < Console.WriteLine("Оба числа равны"); >Console.ReadKey(); > > >
Напишите консольную программу, в которую пользователь вводит с клавиатуры число. Если число одновременно больше 5 и меньше 10, то программа выводит «Число больше 5 и меньше 10». Иначе программа выводит сообщение «Неизвестное число».
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите число: "); int num1 = Convert.ToInt32(Console.ReadLine()); if (num1 >5 && num1 < 10) < Console.WriteLine("Число больше 5 и меньше 10"); >else < Console.WriteLine("Неизвестное число"); >Console.ReadKey(); > > >
Напишите консольную программу, в которую пользователь вводит с клавиатуры число. Если число либо равно 5, либо равно 10, то программа выводит «Число либо равно 5, либо равно 10». Иначе программа выводит сообщение «Неизвестное число».
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите число: "); int num1 = Convert.ToInt32(Console.ReadLine()); if (num1 == 5 || num1 == 10) < Console.WriteLine("Число либо равно 5, либо равно 10"); >else < Console.WriteLine("Неизвестное число"); >Console.ReadKey(); > > >
В банке в зависимости от суммы вклада начисляемый процент по вкладу может отличаться. Напишите консольную программу, в которую пользователь вводит сумму вклада. Если сумма вклада меньше 100, то начисляется 5%. Если сумма вклада от 100 до 200, то начисляется 7%. Если сумма вклада больше 200, то начисляется 10%. В конце программа должна выводить сумму вклада с начисленными процентами.
Для получения вводимого с клавиатуры числа используйте выражение Convert.ToDouble(Console.ReadLine())
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите сумму вклада: "); double sum = Convert.ToDouble(Console.ReadLine()); if (sum < 100) < sum += sum * 0.05; >else if (sum else < sum += sum * 0.1; >Console.WriteLine($"Сумму вклада после начисления процентов: "); Console.ReadKey(); > > >
Изменим предыдущую задачу. Допустим, банк периодически начисляет по всем вкладам кроме процентов бонусы. И, допустим, сейчас банк решил доначислить по всем вкладам 15 единиц вне зависимости от их суммы. Измените программу таким образом, чтобы к финальной сумме дочислялись бонусы.
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите сумму вклада: "); double sum = Convert.ToDouble(Console.ReadLine()); double percent = 0; if (sum < 100) < percent = 0.05; >else if (sum else < percent = 0.1; >sum += sum * percent + 15; Console.WriteLine($"Сумму вклада после начисления процентов: "); Console.ReadKey(); > > >
Напишите консольную программу, которая выводит пользователю сообщение «Введите номер операции: 1.Сложение 2.Вычитание 3.Умножение». Рядом с названием каждой операции указан ее номер, например, операция вычитания имеет номер 2. Пусть пользователь вводит в программу номер операции, и в зависимости от номера операции программа выводит ему название операции.
Для определения операции по введенному номеру используйте конструкцию switch. case.
Если введенное пользователем число не соответствует никакой операции (например, число 120), то выведите пользователю сообщение о том, что операция неопределена.
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите номер операции: 1.Сложение 2.Вычитание 3.Умножение"); int operation = Convert.ToInt32(Console.ReadLine()); switch (operation) < case 1: Console.WriteLine("Сложение"); break; case 2: Console.WriteLine("Вычитание"); break; case 3: Console.WriteLine("Умножение"); break; default: Console.WriteLine("Неизвестная операция"); break; >Console.ReadKey(); > > >
Измените предыдущую программу. Пусть пользователь кроме номера операции вводит два числа, и в зависимости от номера операции с введенными числами выполняются определенные действия (например, при вводе числа 3 числа умножаются). Результа операции выводиться на консоль.
using System; namespace HelloApp < class Program < static void Main(string[] args) < Console.WriteLine("Введите первое число: "); int num1 = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введите второе число: "); int num2 = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введите номер операции: 1.Сложение 2.Вычитание 3.Умножение"); int operation = Convert.ToInt32(Console.ReadLine()); int result = 0; switch (operation) < case 1: result = num1 + num2; Console.WriteLine($"Результат операции "); break; case 2: result = num1 - num2; Console.WriteLine($"Результат операции "); break; case 3: result = num1 * num2; Console.WriteLine($"Результат операции "); break; default: Console.WriteLine("Неизвестная операция"); break; > Console.ReadKey(); > > >