[Programming Fundamentals] 10. Triangle of Numbers
Може ли някой да ми каже защо на последния ред ми печата съшия брой като на предпоследния ? ?
https://pastebin.com/CjyyRrzn
Може ли някой да ми каже защо на последния ред ми печата съшия брой като на предпоследния ? ?
https://pastebin.com/CjyyRrzn
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int row = 1; row <= n; row++) /* тук row беше < от n,а трябва да е <= от n. */
{
/// беше излишно да слагаш тук да ти принтира първата цифра.
for (int col = 1; col <= row; col++)
{
Console.Write(row+" ");
}
Console.WriteLine();/// новият ред беше извън цикълът.
}
}
using System;
namespace TriangleOfDollars
{
class Program
{
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int row = 1; row <= n; row++) // <=
{
//Console.WriteLine(row);
for (int col = 1; col <= row; col++)
{
Console.Write(row + " ");// + " "
}
Console.WriteLine();
}
}
}
}
Няма ли вариант, в който става по елегантно с 1 for цикъл при който по някакъв начин правим new string () и принтира променлива както съм показал по- долу ?
var num = int.Parse(Console.ReadLine());
for (int row = 1; row <= num; row++)
{
Console.WriteLine(new string($"{row}", row)); или Console.WriteLine(new string('row', row));
}
По тези начи гърми и не мога да намеря как става, не вярвам да няма подобно решение.
опитах и с този буквално цикъла и три реда ми беше решението използвах аски кодовете на цифрите но се оказа че половината тестове са с числа по големи от 9 . а това че трябва да има и спеисове между цифрите го прави още по овъртяно
могат разбирасе да се послзват други кшасове и методи но и те самите работят с цикли и изпълнението на кода ще се забави и ще използва повече работна памет.
според мен наи оптимално си е с двата фор цикъла
MihailFernandes new string приема само един символ и след запетайката колко пъти да се тпечатва. Това може да ти свърши работа ако се опитваш да го направиш само със звездички или друг символ, но не и когато трябва да сменяш символите незнайно колко пъти. Мислех си дали не може да се направи със switch във цикъла, но пак не става защото не се знае какво число ще подадат отначало и до колко трябва да се завърти цикъла.
И аз се замислих за решение с нещо подобно на new string, но не го измислих и направих задачата с два for- цикъла.
https://pastebin.com/VL4mgWd2
Благодаря ! :)
Здравейте.Може ли смао някой да ми обясни точно логиката на работа на втория цикъл и как точно той печата желания брой от даденото число...?Благодаря!