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

Относно решаване на задача : Problem 6. Four-Digit Number

Ето и условието 

Write a program that takes as input a four-digit number in format abcd (e.g. 2011) and performs the following:

  • Calculates the sum of the digits (in our example 2+0+1+1 = 4).
  • Prints on the console the number in reversed order: dcba (in our example 1102).
  • Puts the last digit in the first position: dabc (in our example 1201).
  • Exchanges the second and the third digits: acbd (in our example 2101).

The number has always exactly 4 digits and cannot start with 0. Examples: 

Ето и кода : 

Console.WriteLine("Enter 4th digit number : ");
            int abcd = int.Parse(Console.ReadLine());
            int a = abcd / 1000;
            int b = (abcd / 100) % 10;
            int c = (abcd / 10) % 10;
            int d = abcd % 10;
            int sum = a + b + c + d;
            Console.WriteLine("The sum is  { 0 } ",sum);
            Console.WriteLine("Reverse of the number is : {0} , {1} , {2} , {3}" , d , c , b ,a);
            Console.WriteLine("Last digit on the first positon :  {0} , {1} , {2} , {3}", d, a, b, c);
            Console.WriteLine("Exchanges the second and the third digits : {0} , {1} , {2} , {3} ", a, c, b, d);

Някой би ли ми обяснил къде греша . Благодаря предварително :)

Тагове:
1
Programming Basics
DimiturJeliazkov avatar DimiturJeliazkov 25 Точки

Здравей,

едно решение от мен, може да го погледнеш има доста интересни неща които за напред ще са ти полезни.

малко съм усложнил решението само за тренировка не за перформънс.

http://pastebin.com/3V1KZ4uL

Edit:

може да се използва това за да се избегнат доста излишни операции:


            // creating a int array
            int[] digits = a.ToString().ToCharArray().Select(x => (int)Char.GetNumericValue(x)).ToArray();

            // Select() => using System.Linq;
            Array.ForEach(digits, x => Console.Write(x)); // print array in one line
            Console.WriteLine(); // blank line

            /*
             * To take it to the next level and you want to convert an unknown string
             * you can use regex to strip out non numeric characters.
             * Code (Text):
             * int[] digits = Regex.Replace(numberToParse, "[^0-9]", "").Select(x => (int)Char.GetNumericValue(x)).ToArray();
             *
             */


ТЦ ТЦ ТЦ Излишна сложнотия и всичко на обратно :)

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