Loading...
YavorYanev avatar YavorYanev 0 Точки

Относно квадрата от звездички

Започнах малко по малко да ровя в интернет ( избягвам да гледам вече решени задачи) и стигнах до тази част:

namespace zashto_puk_ne
{
    class Program
    {
        static void Main(string[] args)
        {

            int n = int.Parse(Console.ReadLine());
            for (int i = 1; i <= n; i++)
            {
                if (i == n) Console.WriteLine(new String('*',i));            
                if (i == n) Console.WriteLine(new String('*',i));
            
            }
        }
    }
}

В момента си мисля, че ако вмъкна между двата if - а oще един ред ще успея да направя липсващите ми редове, който уформят вече квадрата. Другият въпрос е дали трябва да е изпълнена задачата с if или катко е в заданието трябва да е с for цикли?

Тагове:
0
Programming Basics 28/08/2016 21:19:05
Leprikona avatar Leprikona 108 Точки

using System;

class Program
{
    static void Main(string[] args)
    {

        int n = int.Parse(Console.ReadLine());
        for (int i = 0; i < n; i++)
        {
            Console.WriteLine("{0}{1}{0}", new string('*', 1), new string(i == 0 || i == n - 1 ? '*' : ' ', n - 2));
        }
    }
}

Ето един по-лесен начин. Въртиш цикъл N на брой пъти като променяш само вътрешността на квадрата, а първия и последния символи не ги пипаш (в случая placeholder-a "{0}" е използван два пъти, защото в началото и края на всеки ред има по една звездичка). Втория placeholder е изписан на един ред като for цикъл и се чете така: ако i е равно на 0 ИЛИ(||) i е равно на n - 1, искаме да ни се отпечата "*" n - 2 броя пъти, а ако не е равно на 0 (първи ред) или n - 1 (последен ред) искаме да ни се отпечата празно място отново n - 2 броя пъти. Ако не ме разбираш, а може и грешно да го обяснявам, има едно видео мисля, че беше на Богомил Димитров, в което той подробно обяснява каква е тази структура и как се ползва. Пробвай да го потърсиш - решава задача "Sunglasses".

Успех с ученето! :)

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