Професионална програма
Loading...
+ Нов въпрос
LilianaVelvheva avatar LilianaVelvheva 17 Точки

Защо Judge ми дава 0/100 на задача 7. Towns to JSON?

Това е моето решение: https://pastebin.com/cLbXz8XN

Ето и условието на задачата:

7.Towns to JSON

You're tasked to create and print a JSON from a text table. You will receive input as an array of strings, where each string represents a row of a table, with values on the row encompassed by pipes "|" and optionally spaces. The table will consist of exactly 3 columns "Town", "Latitude" and "Longitude". The Latitude and Longitude columns will always contain valid numbers. Check the examples to get a better understanding of your task.

Input

The input comes as an array of strings – the first string contains the table’s headings, each next string is a row from the table.

Output

  • The output should be an array of objects wrapped in JSON.stringify().
  • Latitude and Longitude must be parsed to numbers, and represented till the second digit after the decimal point!

Examples

Input

Output

['| Town | Latitude | Longitude |',

'| Sofia | 42.696552 | 23.32601 |',

'| Beijing | 39.913818 | 116.363625 |']

[{"Town":"Sofia",

  "Latitude":42.7,

  "Longitude":23.32

},
{"Town":"Beijing",

 "Latitude":39.91,

 "Longitude":116.36

}]

['| Town | Latitude | Longitude |',

'| Veliko Turnovo | 43.0757 | 25.6172 |',

'| Monatevideo | 34.50 | 56.11 |']

[{"Town":"Veliko Turnovo",

  "Latitude":43.08,

  "Longitude":25.62

},
{"Town":"Monatevideo",

 "Latitude":34.5,

 "Longitude":56.11

}]

Тагове:
0
Module: JS Advanced
Williams79 avatar Williams79 -1 Точки

Thanks for the update, I will try to figure it out for more. Keep sharing such informative post. 

 

FirstCallOnline

-2
24/09/2021 07:22:35
svephoto avatar svephoto 1061 Точки

Здравей, LilianaVelvheva,


 

Твоето решение има нужда от някои промени, поправки и добавки, като например, че трябва да започнем да добавяме от втория елемент на масива, който ни подават на входа, а на ред 14 преди променливата "town" липсва "let". Това https://pastebin.com/8b49NySi е твоето решение за 100/100, с добавка от мен за JSON.stringify(), понеже в условието имаме подсказка да използваме тази функция. Добавил съм и .trim() за премахване на излишните интервали около елементите след .split("|"), защото не ни върши работа да сплитнем по " | ", т. к. в началото и в края на всеки елемент има пайп само с по един интервал, веднъж отдясно и веднъж отляво. Освен това можеш да имаш предвид занапред, че е добра практика да използваш Number() за преобразуване на стринг в число, а не +. Всеки town-обект го добавям допълнително в друг обект, върху който след това да приложим функцията JSON.stringify(), резултата от която пък запазвам в още един обект. В тази функция си проверявам дали някоя стойност към някой ключ е число и ако е - връщам я като такова, понеже в изхода накрая числата трябва да са без кавички около тях, т. е. да не са принтирани като стрингове. После пушвам всеки готов обект в масив за крайния резултат и накрая логваме на конзолата него, със "," след всеки елемент и с отваряща и затваряща квадратна скоба съответно в началото и в края. Може да има и още по-кратък вариант конкретно на твоето решение, но това рефакториране измислих към момента. laugh

1
23/09/2021 21:05:06
LilianaVelvheva avatar LilianaVelvheva 17 Точки

Благодаря много за обясненията и за решението.

0
svephoto avatar svephoto 1061 Точки

Моля. yes

0
Dimitar_M avatar Dimitar_M 1 Точки
  1. https://pastebin.com/sTfHEWZw ето и едно изключително простичко решение от 15 реда код. На който му е интересно да види.

0