Average Load Time Calculator - Problem with Input
В задача 9 от домашното за C# Advanced Topics, input-a е произволен брой редове. Ако се чете от файл, може да стане със StreamReader, но от конзолата нямам идея как да прочета неизвестен брой редове. Някой има ли идея, че не намирам нищо в Гугъл?
Problem 9. Average Load Time Calculator
We have a report that holds dates, web site URLs and load times (in seconds) in the same format like in the examples below. Your tasks is to calculate the average load time for each URL. Print the URLs in the same order as they first appear in the input report. Print the output in the format given below. Use double floating-point precision. Examples:
Input |
Output |
2014-Mar-02 11:33 http://softuni.bg 8.37725 2014-Mar-02 11:34 http://www.google.com 1.335 2014-Mar-03 21:03 http://softuni.bg 7.25 2014-Mar-03 22:00 http://www.google.com 2.44 2014-Mar-03 22:01 http://www.google.com 2.45 2014-Mar-03 22:01 http://www.google.com 2.77 |
http://softuni.bg -> 7.813625 http://www.google.com -> 2.24875 |
2014-Apr-01 02:01 http://softuni.bg 8.37725 2014-Apr-01 02:05 http://www.nakov.com 11.622 2014-Apr-01 02:06 http://softuni.bg 4.33 2014-Apr-01 02:11 http://www.google.com 1.94 2014-Apr-01 02:11 http://www.google.com 2.011 2014-Apr-01 02:12 http://www.google.com 4.882 2014-Apr-01 02:34 http://softuni.bg 4.885 2014-Apr-01 02:36 http://www.nakov.com 10.74 2014-Apr-01 02:36 http://www.nakov.com 11.75 2014-Apr-01 02:38 http://softuni.bg 3.886 2014-Apr-01 02:44 http://www.google.com 1.04 2014-Apr-01 02:48 http://www.google.com 1.4555 2014-Apr-01 02:55 http://www.google.com 1.977 |
http://softuni.bg -> 5.3695625 http://www.nakov.com -> 11.3706666666667 http://www.google.com -> 2.21758333333333 |
принципно ставаа, но трябва да набия още 1 ентер накрая.. а пък на теория не знаеш дали няма да има празен ред във входните данни
Присвояването в условието на конструкция не е добра идея, по-добре да се присвои преди цикъла и да се вземе наново в края му. В условието трябва да има булев израз, в случая има: 1) викане на метод и четене на данни от конзолата; 2) присвояване на прочетените данни в променлива; 3) проверка каква е стойността на тази променлива.
Ако присвоя стойността на променливата преди цикъла, какъв ще ми е break condition-a на while цикъла? Аз първо пробвах да сложа в условието на while-a само (console.readline() != ""), но тогава първия вход не го записва (аз добавям всеки ред в един списък). Дай идея как да го направим това с неизвестен брой редове вход.