Loading...
krisiety avatar krisiety 11 Точки

Rounding Numbers - Аrrays

Здравейте, бихте ли обяснили как се решава тази задача, много пъти се опитвах с този double но нищо не се получи, затова го оставих така. 

 

namespace Rounding
{
    class Program
    {
        static void Main(string[] args)
        {
            double[] nums; 
            int[] arr = new int[nums.Length];

            for (int i = 0; i < nums.Length; i++)
            {
                arr[i] =(int)Math.Round(nums[i], MidpointRounding.AwayFromZero);
            }
            for (int i = 0; i < nums.Length; i++)
            {
                Console.WriteLine($"{nums[i]} => {arr[i]}");
            }
        }
    }
}
 

Тагове:
0
Programming Fundamentals
Google avatar Google 188 Точки

Може да погледнеш моето решение: 

https://github.com/VelizarVeli/15.Arrays/blob/master/05.RoundingNumbersAwayFromZero/Program.cs

0
krisiety avatar krisiety 11 Точки

Много ти благодаря!

0
veronikaaa86 avatar veronikaaa86 365 Точки

Здравей,

първо не виждам какво закръгляш, не четеш нищо от конзолата. От къде взимаш поредицата от числа? Освен това имаш два еднакви цикъла - един за закръглянето и един за принт...може и двете неща да са в един цикъл.

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

https://pastebin.com/JxVtwB1M

1
krisiety avatar krisiety 11 Точки

Благодаря!

0
Skyver avatar Skyver 17 Точки

Привет.

Каква е разликата между между Вашето и моето решение, освен във вида на цикъла и броят на точките?

https://pastebin.com/hffsW53Y

0
KeepCoding avatar KeepCoding 554 Точки

Judge ти дава един входен стринг. Този стринг е от типа
"2.5 -3.14 4.1 9.3"
Това са числа от тип "double". Следващата стъпка е този стринг да се превърне в масив от числа с плаваща запетая. Тъй като всяко число е разделено с празно място, можеш на един ред да присвоиш тези числа на масива.
 

string doubleVariables = Console.ReadLine();

double[] arrayOfDoubles = doubleVariables.Split(' ').Select(double.Parse).ToArray();

Сега трябва да се обходи масива и всяко число да бъде закръглено по специален начин.

for (int i = 0; i < arrayOfDoubles.Length; i++)
  {
    int roundedNumber = (int)Math.Round(arrayOfDoubles[i], MidpointRounding.AwayFromZero);
    Console.WriteLine($"{arrayOfDoubles[i]} => {roundedNumber}");
  }

Това беше задачата.

1
krisiety avatar krisiety 11 Точки

Много благодаря!

0
Denislava91 avatar Denislava91 5 Точки

Здравейте:)

Дали може да помоля някой да разпише решението ред по ред, а не така няколко операции на един ред: 

double[] arrayOfDoubles = doubleVariables.Split(' ').Select(double.Parse).ToArray();

Ето го и моето, което за жалост не работи:)

using System;
					
public class Program
{
	public static void Main()
	{

		
		string input=Console.ReadLine();
		
		string[] items=input.Split();
		
		double[] numbers=new double[items.Length];


		for(int i=0;i<items.Length;i++)
		
		{
		
			numbers[i]=double.Parse(items[i]);
			
			Console.WriteLine(items[i] + " => "+ Math.Round(numbers[i]));
		
		}
		
		
        }

      }

 

Опитвам се да разбера логиката зад масиви и ще ми е по-лесно, по-раздробено.

Дори и със съкратения синтаксис ми дава 75%:

using System;

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

public class Program
{
	public static void Main()
	{

	
	double[] array=Console.ReadLine().Split().Select(double.Parse).ToArray();
		
	int[] roundNums=new int[array.Length];
		
		for(int i=0;i<array.Length;i++)
		
		{
		roundNums[i]=(int)Math.Round(array[i],MidpointRounding.AwayFromZero);
		
		Console.WriteLine(array[i]+" => "+roundNums[i]);
		}
		
        }

      }

Предварително благодаря.

Дени

0
22/01/2020 09:19:10
Judeva avatar Judeva 0 Точки

Здрасти, подминавай тези 75%, това е бъг в Judge заради updatе. Нещо свързано с .Net Core, и връща output -0 или някаква такава боза. 

0
krum_43 avatar krum_43 756 Точки

Здравей колега,

Студента с ник KeepCoding e предложил кратко и ясно решение.

Като изключим това закръгляване в заачата няма нищо сложно.

Този тип закръгляване не се използва често и винаги можеш да провериш синтаксиса му в интернет.

0
sukalu88 avatar sukalu88 43 Точки

I am really happy to find this website finally. Activities really informative and meaningful, Thanks for the article and effort! Please continue to share more like a blog. I have now saved it to my bookmarks so I can stay in touch with you. driving directions

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