Timkor

triangles

Feb 26th, 2021
1,069
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Задача. Трикутники.
  2. let n = +prompt("Задайте розмір трикутника")
  3. for (let i = 0; i < n; i++) {
  4.      if (i == n) break // рядок зайвий, умова i == n недосяжна, бо for виконується за своєю умовою i < n
  5.     for (let j = 0; j < i; j++) {
  6.         if (j == n) { // це недосяжна умова, зайвий рядок
  7.             console.log('це логування, якщо воно вивовдиться - то умова досяжна'); // будь ласка, перевірте це.
  8.             break;
  9.         }
  10.         console.put("*")
  11.     }
  12.     console.log("*") // тут не треба виводити зірку, тут варто лише перевести рядок, тобто виконати одне діло, а не декілька - формула успіху.
  13. }
  14. /* ось ваш код без зайвих рядків та дій: */
  15. // Задача. Трикутники.
  16. let n = +prompt("Задайте розмір трикутника")
  17. for (let i = 0; i < n; i++) {
  18.  
  19.     for (let j = 0; j <= i; j++) {
  20.  
  21.         console.put("*")
  22.     }
  23.     console.log()
  24. }
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31. let n = +prompt("Задайте розмір трикутника")
  32. for (let i = 0; i < n; i++) {
  33.     if (i == n) break
  34.     for (let j = n; j > 0; j--) {
  35.         if (j == i + 1) break
  36.         console.put("*")
  37.     }
  38.     console.log("*")
  39. }
  40. /* те саме без зайвого:*/
  41. let n = +prompt("Задайте розмір трикутника")
  42. for (let i = 0; i < n; i++) {
  43.  
  44.     for (let j = n; j > i; j--) { // було for (let j = n; j > 0; j--)
  45.  
  46.         console.put("*")
  47.     }
  48.     console.log()
  49. }
  50.  
  51.  
  52.  
  53. // Знову використав оператор break... пізніше побачив у інших студентів як можна вирішити задачу без нього, але мій
  54. // варіант був все ж таки із break. Чомусь в такому напрямку у мене хід думок...)
  55. /* мені сумно, що ви не прислухалися до порад у минулому рев'ю, і не зрозуміло навіщо нове рев'ю "старого" кода - тобто
  56. з тими самими зайвими брейками .
  57.   Хід думок нормальний, я ж не хочу заважати вашому ходові, я хочу додати напрямку, поділитися досвідом та деякими
  58. ідіоматичними штуками, і не хочу бути наполегливим при цьому - бо самостійна праця важливіша за поради. */
  59.  
  60.  
  61. /* я хочу поділитися з вами своїм баченням того, які покращення можна внести до наступного рішення, але не впевнений,
  62. * що вам це потрібно , а тема доволі обширна. Дозволю собі лише невелике зауваження:
  63. * можна позбавитися  if , замість нього створити два незалежних вкладених цикла, один виводить потрібну кількість пробілів,
  64. * а інший зірки.
  65. *
  66. * */
  67. let all = +prompt("Задайте розмір трикутника") // іменування all не здається вдалим, краще size, height
  68. for (let coll = all; coll > 0; coll--) { // зовнішній цикл перебирає рядки - row, не знаю що таке coll
  69.     for (let line = all; line > 0; line--) { // line .. я заплутався в іменуваннях.
  70.         if (line >= coll) {
  71.             console.put(" ")
  72.         } else {
  73.             console.put("*")
  74.         }
  75.     }
  76.     console.log("*")
  77. }
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.

×