Задача - 06. Triangle of 55 Stars
Здравейте. Имам проблем с тази задача. До колкото си спомням този код би трябвало да свърши работа, но ефекта е като все едно в скобите е само ("*").
for (int i = 0; i < 55; i++)
{
Console.WriteLine("*", i);
}
"Напишете C# конзолна програма, която отпечатва триъгълник от 55 звездички, разположени на 10 реда"
using System;
class TriangleOf55Stars
{
static void Main()
{
for (int i = 1; i <= 10; i++)
{
Console.WriteLine(new string('*',i));
}
}
}
Това ми е решението дава 100/100
Както споменавам по-горе. Веднага щом колегата ми написа да използвам " new string('*',i) " и задачата беше решена. :)
Аз ти го казвам като решение, че и така също става. Катого видиш този код някъде да знаеш за какво служи.
Ами аз го написах с десет реда Console.Write() и пак дава 100/100
Идеята е да се научим да ползваме цикли и да влагаме някаква логика в програмките си.
На следващите задачи входните данни са в голям диапазон и за да го "хард-коднеш" ще ти е почти невъзможно за да се вместиш в паметта и времето за работене на програмата ти.
То ще мине и така, но ако се иска 1000 реда какво правим.... ще се строшиш от кодене
Е, аз мога да го направя и цикъл. Просто бързах и нямах време да мисля. На мен идеята ми беше, че всяко вярно решение дава 100/100
да се опитам да разшифровам програмката на Borislaw 9212
Ако реда е нула добавяш 1 ;
Ако колконата е нула добавяш 1 при условие че е с единица по малка от реда; значи тук колконата си остава 0
печатащ " * " и печаташ " " ( нищо)
Това е първото преминаване през цикъла.
Следава- променливите вече имат стойност 1 на ред проверява дали е стигнала до 10 и добавя 1 към ред . И тъйкато реда вече е 2 към колконата се добавя 1
Печата втори ред * и печата първа колона * звезди и печата " " (нищо)
Това е второто преминаване през цикъла.
Програмата ще премине през цикъла докато се изпълни условието реда да е 10 и колконата да е с единица по малка от реда.
е има едно нещо къде не мога точно да си го обясня - как на третия ред конзолата разбра че трябва да се 3 звездичките? иначе работи ! проверих
Това са два вложени цикъла не е само един.
Така чем, на всеки ред има толкова звезди колкото е реда... горе долу е това.
1
22
333
4444
55555
666666
7777777
....
Сърдечно благодаря !
Просто бях пропуснала този факт да го отбележа. Сега ми се връзват нещата с обеснението как работи програмката за да направи това което се иска от нея .
using System;
namespace _05.TriangleOf55Stars
{
class TriangleOf55Stars
{
static void Main()
{
for (int row = 1; row <= 10; row++)
{
for (int col = 0; col < row; col++)
{
Console.Write('*');
}
Console.WriteLine();
}
}
}
}