Им дојде редот и на задачите од Американскиот Колеџ
Иако овие се малце потешки од оние претходните кои ги постирав, мене повеќе ми се допаќаат затоа што треба да се напишат програми наместо да се заокружува кој е точен одговор.
Овие задачи наменети се за програмскиот јазик C++, али поголемиот дел од нив можат да се решаваат во било кој програмски јазик.
1. Функции
Напиши програма која за внесен цел број ќе го отпечати збирот на неговите цифри. Програмата треба да има функција која како аргумент го прима внесениот број, а потоа го враќа збирот на неговите цифри.
Пример:
Влез: 1436
Излез: 14 (1+4+3+6)
1.1 Функции
Напиши програма која за внесен реден број на месец да отпечати колку денови има тој месец. Програмата треба да има функција како аргумент го прима редниот број на месецот и која го враќа бројот на денови на тој месец.
Пример:
Влез: 12 (Декември)
Излез: 31 (Декември има 31 ден)
- Бонус
Во случај да се внесе 2 (Февруари), програмата да праша дали станува збор за престапна година или не.
Пример:
Влез: 2 (Фебруари)
Излез: Дали годината е престапна (0=Не, 1=Да): 0
Месецот име 28 дена.
(Буквите пишувајте ги на латиница)
2. Наредби за повторување - for
Бидејки задачиве се малце лоши за да ги пишувам рачно и текстуално, затоа ќе ги постирам сликовито...
2.1 Задача број еден:
2.2 Задача број два:
2.3 Задача број три:
3. Низи
Елементите на еднодимензионалната низа a[] се внесуваат преку иницијализаторска низа. Пресметајте ги одделно збирот на позитивните и збирот на негативните елементи и испечатете ги овие 2 збора на екранот.
3.1 Низи
Пресметајте ја средната вредност на елементите во низа од цели броеви a[]. Низата има 10 елементи и тие се внесуваат преку тастатура.
4. Вовед во микрокомпјутери
Да се внесуваат децимални броеви и истите да се сместуваат во низа. Внесувањето на броевите да запре кога ќе се внесе 0. Потоа да се пресмета нивната хармонска вредност.
Сорете што неможам да пишам формула за пресметување на хармонска вредност, али ептен е ушмрљано и ништо не се разбира :S
4.1 Вовед во микрокомпјутери
Да се внесуваат децимални броеви и истите да се сместуваат во низа. Внесувањето на броеви да запре кога ќе се внесе 0. Потоа да се внесе децимална вредност
x. Да се напише функција која како излез ќе го даде процентот на елементи со вредност помала од
x. Од главната програма т.е. од main() само да се повика таа функција. Процентот се пресметува на следнив начин:
4.2 Вовед во микрокомпјутери
Да се напише процедура
izmeni која како аргумени има референци на 3 цели броеви. Во прцеддурата, првиот аргумент се зголемува 1, вториот аргумент се множи по 2, и третиот се намалува за 1. Потоа во main() да се декларираат 3 целобројни променливи
x,
y и
z и да се внесат нивните вредности преку тастатура. Да се повика процедурата со нив како аргументи. На крајот во main() да се отпечатат нивните нови вредности.
Пример:
x=3, y=2, z=4;
Излез: 4, 4, 3; (3-1=4, 2*2=4, 4-1=3)
4.3 Вовед во микрокомпјутери
Да се внесе матрица m x n (m, n и елементите на матрицата се внесуваат преку тастатурата). Да се пресмета средната вредност на матрицата. Средна вредност на матрица се пресметува како
збир на елементи на матрицата
m*n
4.4 Вовед во микрокомпјутери
Да се внесуваат децимални броеви и истите да се сместат во низа. Внесувањето на броевите да запре кога ќе се внесе 0. Да се напише функција која како излез ќе го даде процентот на елементи со вредност 5 во неа. Од главната функција т.е. од main() само да се повика таа функција. Процентот се пресметува на следниот начин:
4.5 Вовед во микрокомпјутери
Да се напише процедура
izmeni која како аргументи има референци на 4 цели броеви. Во процедурата, првиот аргумент си ја заменува вредноста со вредноста на вториот, третиот си ја заменува својата вредност со вредноста на четвртиот аргумент. Потоа во main() да се декларираат 4 целобројни променливи
v,
x,
y и
z и да се внесат нивните вредности преку тастатура. Да се повика процедурата со нив како аргументи. На крај во main() да се отпечатат нивните нови вредности.
Пример:
v=3, x=2, y=4, z=2;
Излез: 2, 3, 2, 4;
Идемо програмирање во Матлаб :twisted:
Како Интро ќе напишам за оние кои незнаат мал вовед во Матлаб.
1. Слабости на Матлаб
- Матлаб не е програмски јазик за општа намена.
- Матлаб е интерпретиран програмски јазик (тоа го прави поспор од C++).
- Матлаб е наменет за технички пресметки (не е погоден на пример за обработка на текст).
- Високата цена.
2. Препораки при креирање на променливи во Матлаб
- Користи имиња на променливи кои асоцираат на нивното значење.
- Променливите во Матлаб:
Мора да почнуваат со буква.
Може да содржат било која комбинација на букви, бројки и долна црта.
Мора да бидат еднозначни во првите 31 знаци.
- Матлаб прави разлика помеѓу големи и мали букви.
- Никогаш не користи променливи со исто име како Матлаб команда.
3. Вградени променливи
- pi - Бредноста на "Пи" во 15 децимали.
- i, j - Имагинарна единица.
- inf - Бесконечност.
- NaN - Not-a-Number (како делење на 0 со 0).
- clock - Моменталниот датум и време како вектор.
- date - Моменталниот датум како текстуална променлива.
- ans - Default variable for snawers.
За да не пишувам цел туторијал за Матлаб, .pdf фајлот можете да го превземете од
тука.
Задачи - Програмирање во Матлаб
1. Преку тастатура да се внесе природен број n и да се испита дали n е степен на некој природен број. Резултатот да се соопшти со соодветна порака.
Пример: Ако n=625 тогаш n е степен на природен број бидејки 625=25
на квадрат.
2. Преку тастатура да се внесе природен број и да се испита дали тој број е помал од сумата на квадратите на неговите цифри на единици и десетки. Резултатот да се соопшти со соодветна порака.
3. Преку тастатура да се внесат 3 природни броеви и да се најде нивниот најголем заеднички делител. потоа резултатот да се испечати во вид на порака NZD(a,b,c)=...
4. Преку тастатура да се внесат 3 природни броеви и да се најде нивниот најголем заеднички содржател. потоа резултатот да се испечати во вид на порака NZS(a,b,c)=...
5. Преку тастатура да се внесат 2 природни броеви a и b, првиот броител, а вториот именител на дропка. Потоа таа дропка да се претстави во облик на мешан број во редуцирана форма.
Пример: 20/16=11/4, 16/20=4/5.
6. Преку тастатура да се внесе природен број, а потоа да се претстави како производ од прости множители.
Пример: 24=2*2*2*3, 39=3*13.
7. Преку тастатура да се внесат координатите на 3 точки од рамнината и да се определи кои 2 се на растојание една од друга. Да се испечати соодветната порака на екран.
8. Преку тастатура да се внесат координатите на една точка од простор и да се определи во кој октант се наоѓа. Да се испечати соодветната порака на екран.
9. Преку тастатура да се внесат координатите на 3 точки и да се подредат тие точки по блискост до координатниот почеток.
10. Да се отпечатат на екран сите временски моменти кога на дигитален часовник прочитаното време е огледало т.е. се чита исто и од лево и од десно.
Пример: 13:31, 10:01...
11. Преку тастатура да се внесе природен број и да се определи колку цифри има.
12. Преку тастатура да се внесе природен број и да се отпечати бројот запишан со истите цифри но по обратен редослед.
Ајмо на решавање