You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/sr/2-js-basics/4-arrays-loops/assignment.md

8.3 KiB

Задаци са низовима и петљама

Упутства

Завршите следеће задатке како бисте увежбали рад са низовима и петљама. Сваки задатак се надовезује на концепте из лекције и подстиче вас да примените различите типове петљи и методе за рад са низовима.

Задатак 1: Генератор бројева у узорку

Направите програм који наводи сваки трећи број између 1-20 и исписује га у конзоли.

Захтеви:

  • Користите for петљу са прилагођеним инкрементом
  • Прикажите бројеве у формату који је лак за корисника
  • Додајте описне коментаре који објашњавају вашу логику

Очекивани резултат:

3, 6, 9, 12, 15, 18

Савет: Измените израз за итерацију у вашој for петљи како бисте прескочили бројеве.

Задатак 2: Анализа низа

Направите низ од најмање 8 различитих бројева и напишите функције за анализу података.

Захтеви:

  • Направите низ под називом numbers са најмање 8 вредности
  • Напишите функцију findMaximum() која враћа највећи број
  • Напишите функцију findMinimum() која враћа најмањи број
  • Напишите функцију calculateSum() која враћа збир свих бројева
  • Тестирајте сваку функцију и прикажите резултате

Додатни изазов: Направите функцију која проналази други највећи број у низу.

Задатак 3: Обрада низа стрингова

Направите низ ваших омиљених филмова/књига/песама и увежбајте различите типове петљи.

Захтеви:

  • Направите низ са најмање 5 вредности типа стринг
  • Користите традиционалну for петљу за приказ ставки са бројевима (1. Назив ставке)
  • Користите for...of петљу за приказ ставки великим словима
  • Користите метод forEach() за бројање и приказ укупног броја карактера

Пример резултата:

Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar

For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR

Character count:
Total characters across all titles: 42

Задатак 4: Филтрирање података (Напредно)

Направите програм који обрађује низ објеката који представљају студенте.

Захтеви:

  • Направите низ од најмање 5 објеката студената са својствима: name, age, grade
  • Користите петље за проналажење студената који имају 18 или више година
  • Израчунајте просечну оцену свих студената
  • Направите нови низ који садржи само студенте са оценама изнад 85

Пример структуре:

const students = [
  { name: "Alice", age: 17, grade: 92 },
  { name: "Bob", age: 18, grade: 84 },
  // Add more students...
];

Тестирање вашег кода

Тестирајте своје програме тако што ћете:

  1. Покренути сваки задатак у конзоли вашег претраживача
  2. Проверити да ли резултати одговарају очекиваним
  3. Тестирати са различитим скуповима података
  4. Проверити да ли ваш код обрађује граничне случајеве (празни низови, појединачни елементи)

Упутства за предају

Укључите следеће у вашу предају:

  • Добро коментарисан JavaScript код за сваки задатак
  • Снимке екрана или текстуални излаз који показује рад ваших програма
  • Кратко објашњење који тип петље сте изабрали за сваки задатак и зашто

Рубрика

Критеријум Изузетно (3 поена) Задовољавајуће (2 поена) Потребно побољшање (1 поен)
Функционалност Сви задаци су успешно завршени, укључујући додатне изазове Сви обавезни задаци раде исправно Неки задаци су недовршени или садрже грешке
Квалитет кода Чист, добро организован код са описним именима променљивих Код ради, али би могао бити боље организован Код је неуредан или тешко разумљив
Коментари Свеобухватни коментари који објашњавају логику и одлуке Присутни основни коментари Минимално или без коментара
Коришћење петљи Показује разумевање различитих типова петљи и њихову примену Петље су коришћене исправно, али са ограниченом разноликошћу Нетачно или неефикасно коришћење петљи
Тестирање Докази о темељном тестирању са више сценарија Основно тестирање је демонстрирано Мало доказа о тестирању

Питања за размишљање

Након завршетка задатака, размислите:

  1. Који тип петље вам је био најприроднији за коришћење и зашто?
  2. Са којим изазовима сте се сусрели приликом рада са низовима?
  3. Како би ове вештине могле бити примењене у пројектима веб развоја у стварном свету?
  4. Шта бисте урадили другачије ако бисте морали да оптимизујете свој код за перформансе?

Одрицање од одговорности:
Овај документ је преведен коришћењем услуге за превођење помоћу вештачке интелигенције Co-op Translator. Иако настојимо да обезбедимо тачност, молимо вас да имате у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати ауторитативним извором. За критичне информације препоручује се професионални превод од стране људи. Не преузимамо одговорност за било каква погрешна тумачења или неспоразуме који могу настати услед коришћења овог превода.