Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

patrik avatar patrik 26 Точки

Isosceles Triangle

using System;
using System.Text;
    class IsoscelesTriangle
    {
        static void Main()
        {
            char symbol = '\u00A9';
            Console.OutputEncoding = Encoding.Unicode;

            double count = 1;
            int red = 3;
            double col = 2 * red - 1;
            for (int i = 0; i < red; i++)
            {
                for (int j = 0; j < col; j++)
                {
                    if (j < (col / 2 - count / 2) || j > (col / 2 + count / 2 - 1))
                    {
                        Console.Write(" ");
                    }
                    else
                        Console.Write(symbol);
                }
                count = count + 2;
                Console.WriteLine();
            }

        }
    }

Така съм направил задачата, но не ми излиза символа който трябва(визуализира ми се "с"). Къде може да е проблема? Локейшъна ми е България.



























Тагове:
0
Programming Basics
Anonymous:
Duplicate: https://softuni.bg/forum/questions/details/81
speksy avatar speksy 9 Точки

Здравейте,
Въпросът ми е дали това решение на задачата Isosceles Triangle отговаря на условието? :)

using System;
using System.Text;

namespace IsoscelesTriangle
{
    class IsoscelesTriangle
    {
        static void Main(string[] args) 
        {
            char copyrightSymbol = '\u00A9';
            Console.OutputEncoding = Encoding.UTF8;

            Console.WriteLine(@"   {0}
  {0} {0}
 {0}   {0}
{0} {0} {0} {0}", copyrightSymbol);

        }
    }

}

0
RoYaL avatar RoYaL Trainer 6849 Точки

Отговаря, но не е това идеята, ако го играеш за точките - ще вземеш някакви :) и аз така го бях оставил от мързел по-скоро

-1
speksy avatar speksy 9 Точки

Не играя за точки просто прегледах Демотата от лекцията и видях подобно нещо и ме интересуваше дали да продължавам да цъкам по тая задачка или да продължавам с другите, но все пак ще помисля за решение с някое цикълче може и да закача някоя точка :D

0
Panglot avatar Panglot 22 Точки

Не е това идеята ли? Идеята на тази задача е по-скоро да си поиграеш с Unicode и настройките на конзолата. Да използваш For когато можеш да използваш точно неговата идея е чиста загуба на време. Не разбирам защо но по това което виждам във форума оставам с извода, че хората обичат да си усложняват живота. Не е като да не виждате, че може да стане по-лесно. Напротив виждате, но предпочитате да го направите по възможно най-сложният начин за който се сещата. Това е на 10 реда код. А на 100? А на 1000? Ако сте чували за KISS принципа припомнете си го, ако не цъкнете на линка за да научите повече.

5
LinAdmin avatar LinAdmin 78 Точки

Колега, ще излезе, че съм преписал от теб laughing, защото и аз го направих точно така, но с отделен WriteLine за всеки ред.

Бях тръгнал да го правя с цикъл for, използвайки като параметри височина на триъгълника, интервали и CopyRight,  за да може да е динамично, т.е. ако искаш триъгълника да е с повече редове да го принтне като хората, без да го омаже, но тъй като още не съм предал второто домашно и много изоставам го направих с WriteLine, защото е по-лесно и по-бързо.

От друга страна, относно как трябва да се направи, чуйте какво казва Наков на лекцията за въпросната задача - пуснете си видеото от втората лекция на 02:04:45 горе-долу. Говори точно за тази задача, и казва, че се прави с няколко WriteLine-a и "че трябва да изнамерите кода на CopyRight символа"

 

Update:

Четейки коментара на колегата Panglot, се сетих за две неща:

Първото е т.нар Zen Of Python (малко off-topic):

The Zen of Python, by TimPeters:

  1. Beautiful is better than ugly.
  2. Explicit is better than implicit.
  3. Simple is better than complex.
  4. Complex is better than complicated.
  5. Flat is better than nested.
  6. Sparse is better than dense.
  7. Readability counts.
  8. Special cases aren't special enough to break the rules.
    1. Although practicality beats purity.
  9. Errors should never pass silently.
    1. Unless explicitly silenced.
  10. In the face of ambiguity, refuse the temptation to guess.
  11. There should be one-- and preferably only one --obvious way to do it.
    1. Although that way may not be obvious at first unless you're Dutch.
  12. Now is better than never.
    1. Although never is often better than right now.
  13. If the implementation is hard to explain, it's a bad idea.
  14. If the implementation is easy to explain, it may be a good idea.
  15. NameSpaces are one honking great idea -- let's do more of those!

Поствам го цялото, ако на някой му е интересно, но искам да се спра на № 11 - "Трябва да има един - и по възможност само един - очевиден начин да се направи"

Второто е нещо, което чух на една от лекциите на Наков или може да е било на откриването, когато каза нещо от сорта на това да се спазват заданията на задачите, защото може това, което си написал да прави същото, но то да не е това, което иска клиента. Не мога да пресъздам точните думи, но идеята беше горе-долу такава.

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.