СЕМИНАРСКИ РАД
СЕМИНАРСКИ РАД
СЕМИНАРСКИ РАД
„ЈОВАН ЦВИЈИЋ“
МОДРИЧА
СЕМИНАРСКИ РАД
ИЗ ПРОГРАМИРАЊА
Ментор: Ученик:
Кристина Горановић, проф. Милош Стијепић, II-1
САДРЖАЈ................................................................................................................................................2
1.УВОД...................................................................................................................................................3
2.ТИПОВИ ПОДАТАКА У C++.................................................................................................................4
2.1 Низови.........................................................................................................................................4
2.2 Матрице......................................................................................................................................6
2.3 Стрингови....................................................................................................................................8
3.ЗАВРШНИ ПРОГРАМ........................................................................................................................11
3.1 Морзеов код.............................................................................................................................11
4.ЗАКЉУЧАК........................................................................................................................................14
2
1.УВОД
Ц програмски језик је један од најзначајнијих и најшире коришћених програмских
језика у историји рачунарства. Развијен почетком 1970-их година у компанији Bell Labs
од стране Дениса Ричија, Ц је дизајниран да обезбеди структуриран и ефикасан начин
програмирања за UNIX оперативни систем. Језик је брзо стекао популарност због своје
ефикасности, преносивости и моћи. Ц програмски језик омогућава директан приступ
меморији и хардверу, што га чини веома ефикасним за писање програма који захтевају
високе перформансе. Овај приступ омогућава програмерима да оптимизују своје кодове
до нивоа који би иначе био недоступан у језицима високог нивоа. Поред тога, Ц је
дизајниран са идејом портативности на уму, што значи да програми написани у Ц могу
се компајлирати и извршавати на различитим платформама са минималним изменама у
коду. Ова особина је била кључна за широку примену Ц језика у различитим
оперативним системима и хардверским архитектурама. Ц је такође познат по својој
једноставности и флексибилности. Иако пружа основни скуп функција и операција,
довољно је моћан да подржи развој комплексних апликација. Програмери могу
користити Ц за различите врсте програмирања, од ниско нивоа до апликацијског нивоа,
што га чини изузетно свестраним. Захваљујући овим карактеристикама, Ц језик је
постао основа за многе друге програмске језике. Многи савремени језици, као што су
C++, C#, и Java, базирани су на концептима и синтакси Ц језика. Ово значи да знање Ц
језика не само да је корисно само по себи, већ и олакшава учење и разумевање других
програмских језика. Ц програмски језик је остао релевантан и широко коришћен више
деценија након свог настанка, и наставља да буде основа за многе модерне софтверске
апликације и системе. Његов утицај на развој софтвера и рачунарства уопште не може
се преценити, а знање Ц језика остаје вредна вештина за сваког програмера. Уз све
наведено, јасно је да Ц програмски језик заузима централно место у историји и
будућности рачунарског програмирања.
3
2.ТИПОВИ ПОДАТАКА У C
2.1 Низови
Низови у C програмском језику су структуре података које омогућавају складиштење
вишеструких вредности истог типа под једним именом. Дефинишу се коришћењем
угластих заграда и могу бити једнодимензионални или вишедимензионални. Низови
имају фиксну дужину која се одређује приликом декларације и не може се мењати
током извршавања програма. Елементи низа су смештени у континуираном блоку
меморије, а приступа им се коришћењем индекса који почиње од нуле.
#include <stdio.h>
int main() {
scanf("%d", &brojBrojeva);
scanf("%d", &broj);
4
poslednjaCifra = broj % 10;
prvaCifra = broj;
// Ispiši rezultat
return 0;
5
Задатак 1. Слика 1
2.2 Матрице
Матрице у C програмском језику су вишедимензионални низови који омогућавају
складиштење података у табеларном облику. Дефинишу се као низови низова, обично у
две димензије, али могу имати и више димензија. Елементи матрице су смештени у
континуираном блоку меморије, а приступа им се коришћењем два или више индекса.
Матрице се користе за представљање података као што су табеле, графови или слике.
Пошто су фиксне величине, њихова дужина и ширина морају бити познати приликом
декларације и не могу се мењати током извршавања програма.
Задатак 2:
Написати програм који у квадратној матрици рачуна збир бројева главне дијагонале.
#include <stdio.h>
int main() {
int n, i, j, zbir = 0;
scanf("%d", &n);
int matrica[n][n];
scanf("%d", &matrica[i][j]);
6
if (i == j) {
return 0;
Задатак 2. Слика 2
2.3 Стрингови
Стрингови у програмирању су низови карактера који се користе за чување и
манипулацију текстом. Сваки карактер у стрингу заузима један бајт меморије.
Стрингови се често користе за чување имена, адреса, текста из датотека и корисничког
уноса. У програмском језику C, стрингови су заправо низови карактера. Манипулација
стринговима укључује операције као што су копирање, спајање, поређење и претрага.
Ефикасно коришћење стрингова је од суштинског значаја за развој многих софтверских
апликација.
7
#include <stdio.h>
#include <string.h>
brojac1[rec1[i] - 'a']++;
brojac2[rec2[i] - 'a']++;
if (brojac1[i] != brojac2[i]) {
return 0;
8
}
int main() {
scanf("%s", rec1);
scanf("%s", rec2);
if (anagrami(rec1, rec2))
else
return 0;
Задатак 3. Слика 3
9
3.ЗАВРШНИ ПРОГРАМ
3.1 Палиндром
Програм има задатак да унесену реченицу( која се састоји искључиво од слова
енглеског алфабета ) преведе тако да буде исписана Морзеовом азбуком( комбинације
цртица и тачака ).
#include <stdio.h>
int main() {
char rijec[100];
scanf("%s", rijec);
duzina++;
if (rijec[i] != rijec[j]) {
palindrom = 0;
break;
10
}
if (palindrom)
else
return 0;
Задатак 4. Слика 4
11
4.ЗАКЉУЧАК
Програмски језик C је моћан језик који омогућава развој разноврсних
софтверских решења. Његова ефикасност, портабилност и могућност директног
приступа меморији чине га популарним избором за развој система високих
перформанси, уграђених система и апликација. Коришћење низова омогућава ефикасно
чување и манипулацију подацима, док матрице омогућавају организовање података у
дводимензионалне структуре, што је корисно за решавање проблема који захтевају
табеларно представљање података. Стрингови, као низови карактера, су основни
елементи за рад са текстуалним подацима, што је неопходно у развоју апликација као
што су обрада текста, рад са базама података и обрада корисничког уноса. Способност
C језика да ефикасно манипулише низовима, матрицама и стринговима омогућава
програмерима да развијају комплексне и ефикасне софтверске системе за различите
сврхе.
12