Loading...
niknedkov avatar niknedkov 1 Точки

[Homework] Square of Stars и for-цикли

Здравейте,

къде мога да намеря информация за значението на отделните части в скобите на цикъл for,

и как мога да обвържа цикъла с определен символ, например изписване на * или празен интервал " "?

От самостоятелно ровене в интернет намерих това:

for (initializer; condition; iterator) 
от тук:

https://msdn.microsoft.com/en-us/library/ch45axte.aspx

... но не мога да разбера какво прави всяко от тях на практика.

 

В задачата за първото домашно пише:

"var n = int.Parse(Console.ReadLine());

1.       Допишете програмата по-горе, за да отпечатва квадрат, съставен от звездички. Може да се наложи да използвате for-цикли. Потърсете информация в Интернет."

Не искам готово решение, а искам да разбера как работи цикъла.

1
Programming Basics 12/06/2016 17:49:52
KostadinKotevski avatar KostadinKotevski 24 Точки

Здравей,

най- простото решение до което успях до достигна с най- малко материал използван е следното: 

using System;

namespace Square_of_Stars
{
    class Square_of_Stars
    {
        static void Main(string[] args)
        {
            var n = int.Parse(Console.ReadLine());
            Console.WriteLine(new string('*', n));
            for (int i = 0; i < n - 2; i++)
                Console.WriteLine(new string('*', 1) + new string(' ', n - 2) + new string('*', 1));
            Console.WriteLine(new string('*', n));
        }
    }
}

 

Човек доста трябва да почете и помъчи само с интрото да достигне до тук, но поне се опитай да разбереш решението! Тези цикли ще 

са много необходими по-късно на изпита 4 от задачите до колкто виждам са необходими различни видове цикли!

Поздрави и Успех! 

Костадин

0
kokopavlov avatar kokopavlov 2 Точки

Понеже не бях запознат с трика с new string('*', n) аз измислих решението по-долу, при което използвам цикли, с които правя concatenation и после отпечатвам получния символен низ. Не е толкова елегантно като на kami_1197, но работи

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace StarsRectangle
{
    class Program
    {
        static void Main(string[] args)
        {
            var n = int.Parse(Console.ReadLine());
            string asteriskRow = "";
            string spaces = "";
            for (int r = 1; r <= n; r++)
            {
                asteriskRow += "*";
            }
            for (int r = 1; r <= n-2; r++)
            {
                spaces += " ";
            }
            string asteriskCol = "*" + spaces + "*";
            Console.WriteLine(asteriskRow);
            for (int r = 1; r <= n-2; r++)
            {
                Console.WriteLine(asteriskCol);
            }
            Console.WriteLine(asteriskRow);
        }
    }
}

0
compitionpoint avatar compitionpoint 2 Точки

C# for loop structure of C# is like an all-in-one looping utility. The C# for loop acts like the while loop only with some extra features. c# for

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
namespace Hello_Word  
{  
   class Program  
   {  
      static void Main(string[] args)  
      {  
         int val = 5;  
         int i, j, k ;  
         for (i = 1; i <= val; i++)  
         {  
            for (j = 1; j <= i; j++)  
            {  
               Console.Write("");  
            }  
            for (k = 1; k <= i; k++)  
            {  
               Console.Write("*");  
            }  
            Console.WriteLine("");  
         }  
         Console.ReadLine();  
      }  
   }  
}  

 

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