Loading...
XmUrF avatar XmUrF 363 Точки

[Homework] C# Basics - Introduction To Programming - Problem 15-16*

Здравейте!

Питането ми е във връзка с това, че ако се използва Console.WriteLine, тъй като принтването на 1000 реда е твърде много, конзолата поне при мен изкарва числата след ~700. Затова аз лично използвах Console.Write, за да може да се събере цялата поредица на един екран.

Въпросът ми е има ли начин да се направи и с Console.WriteLine и ако да, как?

Тагове:
1
Programming Basics 20/10/2014 19:05:26
zontak avatar zontak 457 Точки
  Ето и моето решение ;)

  class longSequence
    {
        static void Main()
        {
            for (int i = 0; i < 1000; i++)
            {
                if ( i % 2 == 0)
                {
                    Console.WriteLine("{0,2}", i+2);
                }
                else
                {
                    Console.WriteLine("{0,2}", -(i+2));
                }
            }
        }
    }

6
milen8204 avatar milen8204 296 Точки

Да предложа и моето решение на задачата. Мисля, че трябва да се използва Console.Write(); при положение, че искаш резултата да изглежда като в условието  "2, -3, 4, -5, 6, -7, …" (със запетая след всеки член на поредицата и всички членове да са на един ред.).

Първия член на поредицата ми се печата с отделен ред с Console.Write(2);. Посредством оператор if определям знака на поредния член  и след това с цикъл печатам членовете със запетая пред тях с Console.Write(", " + member); Аз съм добавил и точка след последния член, като съм драснал едно Console.WriteLine("."); извън тялото на цикъла.

0
LinAdmin avatar LinAdmin 78 Точки

Здравей,

Структурата на тази задача е като тази на задача №9. Само се променя условието на for цикъла, т.е. цикъла "върти", докато i  достигне 1001 в случая ( задача 9 беше 11).

Ето и моето решение:

/* =============================
 * Problem 16.    Print Long Sequence
 * =============================
 *
 * Write a program that prints the first 1000 members of the sequence: 2, -3, 4, -5, 6, -7, …
 * You might need to learn how to use loops in C# (search in Internet).
 */

using System;

class Print_Sequence
{
    static void Main()
    {
        for (int i = 2; i <= 1001; i++)
        {
            if (i % 2 == 0)
            {
                Console.Write(i);
            }
            else
            {
                Console.Write(-i);
            }
            Console.Write(", ");
            // This inserts a new line on every 10 numbers
            if (i % 10 == 0)
            {
                Console.WriteLine();
            }
        }
        Console.WriteLine();
    }
}

Тук, понеже са много числа добавих един if "за красота" вътре в цикъла, който казано с две думи, пренася на нов ред всеки път като стигне число, кратно на 10 (т.е. 10, 20, 30, 40, 50 и т.н.)

Ето какво се случва:

2, -3, 4, -5, 6, -7, 8, -9, 10,
-11, 12, -13, 14, -15, 16, -17, 18, -19, 20,
-21, 22, -23, 24, -25, 26, -27, 28, -29, 30,
-31, 32, -33, 34, -35, 36, -37, 38, -39, 40,
-41, 42, -43, 44, -45, 46, -47, 48, -49, 50,
-51, 52, -53, 54, -55, 56, -57, 58, -59, 60,
-61, 62, -63, 64, -65, 66, -67, 68, -69, 70,
-71, 72, -73, 74, -75, 76, -77, 78, -79, 80,
-81, 82, -83, 84, -85, 86, -87, 88, -89, 90,
-91, 92, -93, 94, -95, 96, -97, 98, -99, 100,
-101, 102, -103, 104, -105, 106, -107, 108, -109, 110,
-111, 112, -113, 114, -115, 116, -117, 118, -119, 120,
-121, 122, -123, 124, -125, 126, -127, 128, -129, 130,
-131, 132, -133, 134, -135, 136, -137, 138, -139, 140,
-141, 142, -143, 144, -145, 146, -147, 148, -149, 150,
-151, 152, -153, 154, -155, 156, -157, 158, -159, 160,
-161, 162, -163, 164, -165, 166, -167, 168, -169, 170,

.....

Надявам се да съм помогнал.

0
bbrayanov avatar bbrayanov 0 Точки

int start = 2;
        int end = 1000;
        for (int i = start; i < end + start; i++)
        {
            if (i % 2 == 0)
            {
                Console.WriteLine(i);
            }
            else
            {
                Console.WriteLine(i * -1);
            }
        }
        Console.ReadLine();

Това е решението според мен а Console.ReadLine(); е за да изчака да се прочете.

0
jumparo avatar jumparo 26 Точки

Ето го и моето решение по 16-та задача : 

using System;

class Program
{
static void Main(string[] args)
{
int a = 2;
int b = -3;
for (int i = 0; i < 1001; i += 2)
{
a = a + 2;
b = b - 2;
Console.WriteLine("{0} {1}", a, b);
}
}
}

 

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