[Homework] C# Basics - Conditional Statements
Здравейте,
Отварям тема за новото домашно.
Решенията ми ще следват едно по едно след като съм готов с всяко от тях :)
1. Problem 1 - Exchange If Greater . Използвал съм XOR алгоритъм за размяна на стойностите на две променливи без да е необходима трета. Повече инфо тук: XOR_swap_algorithm .
Така представено решението ми работи само за целочислен тип.
В тази задача третата проверка е объркана. Трябва резултата да е 4.5 5.5 (по условие). Втората грешка в условието е, че стойностите не са целочислени (третата проверка).
2. Problem 2 - Bonus Score . Използвал съм switch-case.
3. Problem 3 - Check for a Play Card. Използвал съм switch statement.
4. Problem 4 - Multiplication Sign. Допълнителна информация към задачата Subset_sum_problem . Така написана задачата обхваща 8 случая при комбинация на всички позиции с положителна и отрицателна стойност. Използвал съм if оператори.
5. Problem 5 - The Biggest of Three Numbers . Използвал съм if-else.
6. Problem 6 - The Biggest of Five Numbers. Използвал съм 5 условия if-else.
7. Problem 7 - Sort 3 Numbers with Nested Ifs . Използвал съм if-else.
8. Problem 8 - Digit As Word . Използвал съм switch statement.
9. Problem 9 - Play with Int, Double and String . Използвал съм switch statement.
10.//TODO. Как се парсва дата и време Инфо от msdn .
11.//TODO
12.//TODO
 Махам решението, ще го направя по подобен начин на твоя! Благодаря!
 Махам решението, ще го направя по подобен начин на твоя! Благодаря!
Програмата ти работи единствено при случаите когато въвеждаш цели числа. При дробни не им разменя стойността, и ако въведеш някакви стрингове също ги принтира. Пробвай просто с една проста проверка дали първото е по голяма от 2рото и ако да -> разменяй и принтирай. Но ползвай double.Parse -> така ще ти работи нормално и със цели числа и с дробни ;)
Да, така е, програмата работи само с цели числа(всъщност работи и с дробни, но не им разменя местата, просто не гърми). Нарочно съм я направил така, защото това е условието на задачата. Просто следвах примерите от самата задача, където като трети пример са дадени дробни числа и местата им не са разменени, а програмата просто ги принтира. Съответно и моята програма се държи по същия начин.
Иначе си прав, че ако се въведат и символи различни от числа и те ще се принтират. Можех да сложа и една проверка дали въведените дани са числа, но тъй като условието не го изискваше се отказах.
Съветвам те когато слагаш имена на променливи да започваш всяка следваща дума с главна буква, че в началото се чудих какво по дяволите е aisint и bisint!
А виж ако бяха така aIsInt и bIsInt друго щеше да е, а и е по правилата да се започват с малка буква и всяка следваща дума да започва с главна, ако името на променливата се състои от няколко думи!
Ето ти моето решение, което проверява за десетична запетая!
ExchangeIfGreater