Obiective

Sarcina 1: Ridicați o mașină

Arhimede și-a dat seama și de puterea pârghiei și a declarat: Dă-mi un punct forte în spațiu și mișcă Pământul.

Creați o funcție float lift_a_car (const int stick_length, const int human_weight, const int car_weight) cu trei parametri:

  • const int stick_length - Lungimea stick-ului
  • const int greutate_umana - Greutatea umana
  • const int car_weight - Greutatea mașinii

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1 punct.

Anexa 2: Prețul unitar pentru hârtia igienică

Ne putem gândi la 1 șir ca la o unitate. Deoarece prețul unei greve ar fi prea mic, luați în considerare prețul pentru 100 de benzi. Rămâne să aflăm cum să convertim metri în greve. Prin măsurători simple, constatăm că 10 pietricele au o lungime de aproximativ 1,17 metri.

Creați o funcție float unit_price (const float pack_price, const int rolls_count, const int pieces_count) cu trei parametri:

  • const float pack_price - Preț pachet
  • const int rolls_count - Numărul de role
  • const int pieces_count - Numărul de piese din stilou

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1 punct.

Sarcina 3: Conjectura Collatz

Creați o funcție int collatz (const int number) cu parametrul:

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

Anexa 4: Găsiți numărul opus

Creați o funcție int oppos_number (const int n, const int number) cu doi parametri:

numere
FIG. 1: Ilustrație

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

Anexa 5: Numărați numerele în matrice

Grupul de oameni stă în linie și mulțumim pentru includerea în echipe, se aplică următoarele:

    1. persoana aparține primei echipe
    1. persoana aparține echipei a 2-a
    1. persoana aparține primei echipe
  • .

Creați o funcție de contorizare nulă (const int input_array [], const int array_size, int result_array [2]) cu trei parametri:

Funcţie nu te mai întoarce Fără valoare.

Funcția calculează a scrie rezultatele pe teren result_array [] conform următoarelor reguli:

Notă

În acest rol, 0 este considerat un număr impar.

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

Sarcina 6: Triunghiul lui Pascal

FIG. 2: Triunghiul lui Pascal

Creați o funcție lungă nesemnată sum_squared (const int line) cu parametrul:

Funcţie va reveni suma pătratelor tuturor coeficienților din linia dată a triunghiului lui Pascal.

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

Anexa 7: Preț minim și maxim

Denis vrea să câștige bani și a avut o idee foarte simplă - va vinde lucruri. Când vrea să obțină profit, trebuie să cumpere lucruri la cel mai mic preț posibil și să vândă pentru cel mai mare.

Sarcina 7.1: Min

Creați o funcție int array_min (const int input_array [], const int array_size) cu doi parametri:

Sarcina 7.1: Max

Creați o funcție int array_max (const int input_array [], const int array_size) cu doi parametri:

Exemplu de utilizare a funcțiilor

Evaluare

Această sarcină este pentru max. 1 punct.

Anexa 8: Contor special

Programați funcția specială lungă fără semn special (const int input_array [], const int array_size) cu doi parametri:

Notă

În acest rol, 0 este considerat un număr impar.

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

Anexa 9: Numere speciale

Programați funcția int special_numbers (const int input_array [], const int array_size, int result_array []) cu trei parametri:

Funcţie va reveni numărul de numere speciale găsite.

Exemplu de utilizare a funcției

Evaluare

Această sarcină este pentru max. 1,5 puncte.

  • Proiectul trebuie trimis la timp în depozitul git la git.kpi.fei.tuke.sk (vezi mai jos).
  • Nu se pot face greșeli în timpul traducerii! Proiectul va fi compilat cu compilatorul gcc folosind următoarele comutatoare:
  • În implementarea finală, nu poate exista global variabil.

Încărcarea unui proiect

Numele proiectului dvs. trebuie să fie în forma: zap-2020.

Proiectul trebuie să aibă următoarea structură de foldere și fișiere:

Semnificația fișierelor individuale este următoarea:

  • CITIȚI resp. README.md - Un fișier cu lista grupului dvs. la care participați:
  • /ps2/ps2.c - Cod sursă pentru soluțiile Sarcini 1-9

Avertizare

Avertizare

Pentru numele folderelor, fișierelor și conținutul fișierului README, resp. README.md Depinde de mărimea literelor!

Notă

Dacă există alte fișiere în proiectul dvs. în plus față de cele necesare, existența lor Nu va fi considerat o greșeală.

Evaluare și testare

Codul Dvs. va fi tradus de compilatorul gcc cu următoarele comutatoare:

Următoarele vor fi considerate o eroare: