[Отговори] First Steps in Coding
Здравейте!
Реших да публикувам отговорите на домашното First Steps in Coding за тези, които се затрудняват с домашното
01. Hello C#
using System;
namespace notes
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello C#");
Console.ReadLine();}
}
}
Обяснение:
Пишем на нов конзолен ред следното - "Hello C#". " " или т.н. двойни кавички се използват при писането на множество от символи. ' ' се използват при писането на САМО 1 символ. Ако не пускате програмата си с Ctrl+F5 ще трябва да добавяте Console.ReadLine(); всеки път в края на програмата си, за да не ви я затваря.
02. Expression
using System;
namespace _02expression
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine((3522 + 52353) * 23 - (2336 * 501 + 23432 - 6743) * 3);
}
}
}
Обяснение:
Пак пишем на нов ред следното - (3522 + 52353) * 23 - (2336 * 501 + 23432 - 6743) * 3 . Това се възприема като математическа операция и автоматично се изпълнява като такава. Просто трябва да я поставим в WriteLine(<ето тук>).
05. Nums 1...20
using System;
namespace _05ot1do20
{
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < 20; i++) Console.WriteLine(i + 1);
}
}
}
Обяснение:
С цикъл for ще си създадем променлива i и ще я увеличаваме всеки път докато не стане 20. Операторът който ще използваме ще изведе стойността на i на нов ред всеки път щом си увеличи стойността.
Отметка: Тъй като ще изпълним само един оператор в цикъла for няма нужда да го заградим със къдрави скоби { }
06. Triangle of 55 stars
using System;
namespace TriangleOf55Stars
{
class Program
{
static void Main(string[] args)
{
for (int i = 1; i <= 10; i++)
{
string zvezdi = new string('*', i);
Console.WriteLine(zvezdi);
}}
}
}
Обяснение:
Пак с цикъл for ще декларираме променлива i. Тъй като имаме 3 условия - Триъгълник, 10 реда и запълващ символ * ще използваме пак както в задача 05 да изпише i, само че колкото пъти е стойността му със символи. Методът, който съм използвал е по-сложен, но ще ви трябва за в бъдеще при други програми. Накратко, декларирам низ като нов низ със символ * и да се повтаря i пъти. После използвам WriteLine и въвеждам името на низа за да ми го изведе на екрана.
07. Rectangle Area
using System;
namespace _07rectanglearea
{
class Program
{
static void Main(string[] args)
{
try
{
var a = decimal.Parse(Console.ReadLine());
var b = decimal.Parse(Console.ReadLine());
Console.WriteLine(a * b);
}
catch (Exception)
{
Console.WriteLine("Error!");
}
}
}
}
Обяснение:
Трябва да намерим лицето на правоъгълник. По математика знаем, че формулата е S = a*b. В случая S няма да ни е нужен, освен ако не е изискано от условието да представим резултата като число от променлива. Декларираме a и b и след това пишем на нов ред резултата от a*b(по-нагоре споменах, че като го напишем така в скобите на екрана ще ви изведе математическия резултат).
08. Square of Stars
<променлива за следене m>
var n = int.Parse(Console.ReadLine()); //въвеждаме n
if (<проверка дали n < 2 или >100>) Environment.Exit(0); //това е да прекрати програмата(код подсказка)
else
{
do
{
if (<е първия ред или последния>) Console.WriteLine(new string('*', n)); //това е код подсказка
else for (int i = 1; i <= n; i++)
{
if (<края на низа настъпи>) Console.WriteLine("*"); //подсказка - това е за последния символ, така го изписва и също така отива на нов ред за следващото изписване
else if (<начало на низ>) Console.Write("*"); //въвежда звездичка
else Console.Write(" "); // пише Space за да е кухо(като дърво? :D)
}
<променлива за следене>++;
} while (<променливата за следене е по-малка или равна на n>);
Обяснение на моя код:
Декларирам си втора променлива за да мога да направя колкото реда има n(ако n = 5 ще има 5 хоризонтални, лесно, но ми трябва нещо да се увеличава и за вертикала), след това правим проверка дали n е по-малко от 2 или по-голямо от 100. Ако не изпълнява условието, излизам от програмата(а пък можете вие нещо друго да направите). Иначе, правя следното:
ЦИКЪЛ 1
{
ЦИКЪЛ 2 (Условие)
{
Проверка ако това е последния символ за реда да сложи символа звезда и да отиди на нов ред
иначе, ако не е изпълнено горното условие - Проверка ако съм на първия символ на новия ред, ще се сложи звезда
иначе, ако нищо не е изпълнено - пиша Space символ
//един вид ако ми е първия символ на реда, пише *, ако не е - (Space), а ако е последния - * и нов ред
} КРАЙ ЦИКЪЛ 2
променливата за следене на ред я повишавам с 1(така евентуално ще стане със същата стойност като n)
} (да се изпълнява ЦИКЪЛ 1, докато променливата за ред не стане равна с n) КРАЙ ЦИКЪЛ 1
Легенда:
{ } - Всичко в нея приспада към оператора
( ) - Условие
// - Коментар(не играе никакво роля в програмата)
Благодаря ви, че отделихте от вашето време за да прочетете всичко това. Отне ми няколко часа да напиша всичко това тук, затова моля уважете труда ми и времето прекарано за да се състави този гайд. Ако имате въпроси, ако мога да помогна ще ви отговоря :)
Супер е! :) Използвал си четворна проверка в едно if и после си сложил нов ред за всеки край на изпълнението на цикъла за изписване на реда. Много умно от твоя страна! :) Само едно, следните неща не са ти нужни да се зареждат с програмата(те са посивели в програмата ако не ги ползваш), по желание можеш да премахнеш това, което не ти трябва.
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
Здравейте! Случайно имате ли затруднение със задача 03?
Мисля, че тя не е за домашна. Видях, че я има решена във файла с упражнения и домашни.