Monday, November 28, 2011

Интегрирана околина

Постапката на изработка на програма може да се подели во неколку чекори :
- пишување на изворен код
- преведување на изворниот код
- поврзување во извршен код
- извршување и проверка на програмата
Постојат посебни програми за секој од наведените чекори.
Наместо користење на посебни програми се користи интегрирана развојна околина ( integrated development environment IDE), која ги обединува горенаведените чекори.
Секоја околина за програмирање е составена од множество програми кои соодветствуваат на различни етапи при решавање на задачата. Тоа се
1. Текст уредувач (внесување на текст од тастатура директно во изворна програма)
2. Преведувач      ( преведува од јазикот на кој е напишана програмата во јазик на компјутерот, проверува и грешки во програмата - синтаксни )
3. Дебагер             ( помага при барање на логички грешки )
4. Уредувач за поврзување

Интегрирана околина




елементи на околина за програмирање 
- лента со менија ( опиши ги )
- лента со алатки 
- работна површина 
     - прозорец за уредување на текст
     - прозорец за соопштенија
     - прозoрец за организација  

Постапка за отварање 
File --> New --> Source File  
Зачувување 
File --> Save as : file name 
              type : C++source file ( *.cpp, *.cc )
Извршување 
Excecute --> Compile and Run

страна 109,111 од учебник
<4 a="" endl="" nbsp="" p="">
Напиши ги програмите.Компајлирај и изврши.  Каков е излезот ( запиши во тетратка)

Tuesday, November 15, 2011

Програмирање, програмски јазици



Софтверот може да се подели во 2 групи 
Системски програми –  управуваат со работата на компјутерот .
- Оперативни системи
-  Контролни програми
                  -   Услужни програми 
Апликативни програми – програми наменети за извршување на конкретна работа - апликации.

Програма претставува постапка за решавање на некоја задача запишана во текстуална форма во некој програмски јазик.

Програмирање е процес на пишување програма .
Процесот на пишување на програми е сложен процес и се одвива во неколку фази
 - поставување на задачата
 - дефинирање постапка за решавање на проблемот
 - пишување програма
 - тестирање на програмата

Програмски јазици

Јазиците можат да бидат
   -  природни (за комуникација меѓу луѓето)
   -  вештачки (за комуникација човек - машина или комуникација помеѓу две машини)
Посебен вид вештачки јазици се програмските јазици, развиени за комуникација човек - машина.

Видови програмски јазици
   -  нижи програмски јазици / машински и симболички
   -  виши програмски јазици /високи програмски јазици

Машинскиот се состои од машински инструкции ( низи од нули и единици).Тој е јазикот на компјутерот односно единствениот  јазик што компјутерот го разбира и на кој работи.

Симболички (се користат едноставни зборови наречени симболи - мнемоници за означување на машинските инструкции .Овој јазик не е разбирлив за компјутерот па за да може програмите напишани на симболички јазик да се извршуваат со компјутерите постојат програми преведувачи наречени асемблери. Симболичките јазици се машинско ориентирани јазици, бидејќи секој компјутер има свој симболичен јазик  и свој преведувач.

Виши програмски јазици
Програмски јазици напишани на јазик сличен на човечкиот природен јазик.
Се појавиле кон крајот на 50-тите години и до денес се најприфатени за масовно користење во програмирањето.
Изградени се на сличен начин како и природните јазици.
Секој од нив има своја
-  азбука (составена од  букви, бројки, специјални знаци )
- зборови ( се формираат со комбинирање на знаците од азбуката и го сочинуваат речникот на јазикот ): INPUT, READ, STOP
-  наредби (зборовите се комбинираат во јазични конструкции наречени наредби или реченици)
-  граматика ( ги содржи правилата за градење зборови и наредби)
-  синтакса (строги правила по кои се конструираат наредбите )
-  семантика ( значењето - смислата на наредбите )

Програмата напишана во виш програмски јазик се нарекува изворна програма , а истата за да може да се изврши во компјутерот мора да се преведе со преведувач или компајлер па, по преведувањето станува извршна програма.
Вишите програмски јазици не зависат од машината на која ќе се извршува некоја програма и затоа се машински независни јазици.
                         

Фази во процесот на изработка на компјутерска програма: 

1. Aнализа на проблемската ситуација и разгледување можни решенија. 

Прво треба да се дефинираат и прецизираат условите под кои задачата ќе се решава.  Тоа се прави со анализа на нејзината природа и ако е потребно навлегување во стручната област на која и припаѓа. Постапката за решавање произлегува од извршената анализа на задачата и консултираната стручна литература.  

 2. Aлгоритамско претставување на чекорите за можното решение на проблемската ситуација (графички или со псевдо код).

Постапката мора да биде применлива за извршување на компјутер. Секоја операција мора да е точно и еднозначно дефинирана и точно да е одреден редоследот на извршување на операциите. Целата постапка мора да е конечна. Вака дефинираната постапка се нарекува алгоритам, а секое поединечни дејство е алгоритамски чекор. Со поимот алгоритам се среќаваме постојано. Секоја активност на човекот претставува алгоритам. Пр. Подготвување  на колач, преминување на улица и др.

 3. Kодирање на алгоритамот.- пишување на изворен код

Алгоритмот се запишува со елементите на некој програмски јазик и со тоа се добива изворниот код. На датотеката и се доделува некое описно име, а наставката е соодветна на програмскиот јазик во кој е напишан изворниот код. Запишување на алгоритамот како низа од инструкции во избран програмски јазик. Вака запишаниот алгоритам претставува програмски код кој се вика изворна програма.Пр. Во С++ е .cpp.

4. Преведување на изворен код 

Изворниот код се преведува со помош на програмите за преведување или компајлери. Преведувачот проверува дали има синтаксна грешка и ако има дава соодветни пораки. Синтаксните грешки се однесуваат на неправилно напишани зборови, неправилно користени или испуштени интерпункциски знаци и сл. По корекција на грешките процесот на преведување успешно се реализира и се добива објектен код со наставка .о или .обј. 

5. Поврзување во извршен код 

Поврзување на објектните кодови со помош на програмите поврзувачи (linkers). Oбјектниот код добиен со преведување треба да се поврзе со постоечките датотеки во кои се наоѓаат веќе преведени мали програми кои често се користат во програмите. Овие датотеки се нарекуваат библиотеки. Ако кодот не може да се поврзе со потребните библиотеки поврзувачот ќе јави грешка при поврзување (link time errors) и нема да се добие извршен код. Овие се грешки при поврзување и треба да се отстранат. По успешното поврзување се добива извршен код со наставка .ехе. Извршната програма може да се користи самостојно на било кој компјутер. 

6.Тестирање на програмата  

Тестирањето се прави од страна на програмерот или корисниците за кои е наменета програмата. Програмата мора да работи правилно за различни вредности кои го внесува корисникот или да оневозможи погрешно внесување вредности во програмата преку пораки и сл. до корисникот.

Се тестира за да се види дали програмата дава точни резултати. Тестирањето се врши за вредности за кои лесно може да се определи резултатот или за вредности за кои се знае  резултатот. Ако програмата неправилно работи, значи има логичка грешка која може да ја корегира само програмерот. По корекција на грешката процесот се повторува.Логичките грешки обично се викаат багови (bugs) и за нивно откривање се користи програма дебагер која овозможува извршување на програмата линија по линија и стопирање на нејзиното извршување на одредено „сомнително“ место

Пример за синтаксна и логичка грешка

Ова е формула за периметар на правоаголник ако се познати неговите страни:
L=2*(а-b
Синтаксна грешка – недостасува заграда на крајот од изразот.
Логичка грешка – формулата не е точна иако поставање на заградата на крајот е правилно запишана.
a=5
b=”Maja”
c= b-a
Логичка грешка – b е текст и не може да биде намаленик.

Преведувачи и интерпретери


Програмите на вишите програмски јазици не можат директно да се извршуваат на компјутер. За таа цел се потребни системски програми- преведувачи или компајлери  кои ќе извршат преведување во машински код.
Програмата напишана на виш програмски јазик се нарекува изворна 
Преведената програма на машински јазик е извршна 

Интерпретери 
Интерпретерите  секвенцијално ги интерпретираат и ги извршуваат нејзините наредби.
Компајлирани 
Изворните програми се преведуваат во извршни ( преведуваат во извршна форма која ја разбира процесорот)

Изворна програма --> преведувач --> Извршна програма

Прашања
1. Пронајди програма напишана на машински, симболички и виш програмски јазик . Објасни на кратко за секоја од нив ( каков јазик е машинскиот, како се запишани податоците во него, кој е поедноставен машинскиот или симболичкиот)
2. Дали зборовите во вишите програмски јазици имаат одредено значење?
З. Зошто вишите програмски јазици се машински независни јазици ?
4. Што се преведувачи, а што интерпретери
5. Која програма е изворна, а која извршна?
6. Наброј ги фазите низ кои минува програмата при преведувањето


Алгоритми

Алгоритам е постапка за решавање на одредена задача составена од строго дефинирани дејства (операции) и точно зададен редослед на нивно извршување, кои применети врз влезните податоци доведуваат до излезни резултати.

Зборот алгоритам (Algorithmi) е земен од латинскиот јазик и е даден по името на узбекистанскиот математичар од IX век Мухамед Ал Хорезми(Abu Jafar Mohammed Ibn Musa Al Khowarizmi), кој прв ги формирал правилата за извршување 4 основни операции со арапски цифри.

Што ја дефинира секоја постапка ?
- зададени влезни (почетни) податоци
- дефинирана низа операции
- пресметани излезни резултати

Секое поединечно дејство од множеството правила (инструкции) дефинирани во алгоритмот се нарекува алгоритамски чекор.
Врз основа на ова можеме да кажеме дека алгоритмот се состои од низа алгоритамски чекори кои се извршуваат по однапред зададен редослед.

Во зависност од алгоритамските чекори алгоритмот може да биде
- општ
- детален
Пример1
Да се состави алгоритам за пресметување на плоштина на правоаголник со страни a и b.

Чекор 1. задавање на вредностите на променливите а и b
Чекор 2. пресметување на вредноста на P по формулата P=a∙b
Чекор 3. прикажување на вредноста на променливата P
Чекор 4. крај на алгоритмот

Не може да се наведе алгоритамски чекор за пресметување вредност на променлива, ако не се познати вредностите врз основа на кои таа се пресметува, нити пак да се наведе алгоритамски чекор за прикажување на вредност на променлива, на која не и е доделена или пресметана вредноста

За даден проблем може да се напишат различни алгоритми и сите тие да бидат правилни. Ако се правилни секој од нив ќе даде точно решение. Но тоа не значи дека сите тие алгоритми се подеднакво ефикасни. Некој можеби ќе биде побрз, друг да дава поточни резултати, трет да има пократок запис или да биде појасен итн

Кои се карактеристиките на алгоритмите? 
 Конечност ( мора да доведе до решение по конечен број чекори)
 Дефинираност и недвосмисленост (секој чекор мора да е еднозначно дефиниран)
 Влез (може да има еден или повеќе влезни податоци)
 Излез ( мора да има еден или повеќе излезни податоци) 
 Ефикасност ( да доведе до решение во што пократко време)
  Остварливост ( да е остварлив на компјутер)

Претставување на алгоритмите
 

Алгоритмот може да се прикаже на два начини:
 - текстуално ( со псевдо јазик)
 -  графички    ( со блок - дијаграм )

 Пример2 Да се напише алгоритам за наоѓање на најголем број од три внесени броја.


 Псевдо јазикот се состои од зборовите : алгоритам, подалгоритам, почеток, крај, ако, тогаш, инаку, додека, извршувај, повторувај, зголемувај, за до чекор, намалувај, читај, печати, излез.

Графичко преставување на алгоритмот со помош на блок-дијаграм. Во блок-дијаграмот се користат посебни графички симболи  за одредени дејства (операции).

Својства на алгоритмите

При решавањето на даден проблем, треба да се води сметка за тоа на кој начин е напишан алгоритмот т.е.по кој редослед се извршуваат операциите во него. 
При негово пишување треба особено да се внимава на:
  • алгоритмот да има само еден почеток
  • алгоритмот да има само еден крај
  • во него да нема бесконечни циклуси
  • да нема делови (чекори) кои никогаш не се извршуваат
Пример 2 
Алгоритмот во пример 2 е неправилен . Зошто ?

Aлгоритмот од пример 2 не е правилен, бидејќи ако бројот а е помал од бројот b, тогаш циклусот ќе се извршува бесконечно и никогаш нема да се добие резултат (решение)


Задачи :

1. Опишете ги сите познати алгоритми за копирање датотеки
2. Споредете ги и утврдете што работат следниве алгоритми

општ алгоритам
чекор 1 : задавање на три броја
чекор 2: споредување на кои било 2 броја и наоѓање на поголемиот од нив
чекор 3: споредување на поголемиот број од чекор 2 со третиот број и наоѓање на поголемиот од нив
чекор 4: печатење на резултатот 
детален алгоритам
чекор 1 : задавање на  броевите a, b, c
чекор 2: ако а > b тогаш p = a, ako а < b  тогаш p=b
чекор 3: ako p >c  тогаш n=p  а ако p < c  тогаш n=c              
чекор 4: печатење на n

( за а, b, c  земи конкретни вредности )



Monday, November 7, 2011

Напредни техники за работа со текст



Стил

Прашања:
1. Што е стил  ?
2. Како се креира сопствен стил?
3. Што се шаблони ?Опиши ја постапката за креирање шаблони.
4. Зошто служат формуларите?
5. Како поставуваме променливи делови ( блокови) во формулар? Опиши ја постапката
6.Весна треба да изработи тест во некоја од програмите за обработка на текст. Тестот треба да содржи 4 прашања  со понудени одговори, но така што постои можност одговорот да се бележи и да може да се корегира истиот. Што и предлагаш на Весна, како да ја реализира задачата.

На таблата подолу бележи ги своите одговори

http://linoit.com/users/elile/canvases/Word


Шаблони

Прашања :
1. Каков документ се отвара со активирање на Word?
2. Дали можеш да го објасниш поимот шаблон ( template) 
3. Која е потребата од шаблони?
4. Опиши ја постапката на креирање на сопствен шаблон
5. Кој тип датотека треба да се избере при креирање на шаблон?
6. Што се полиња за контрола во формулар?

Да запомниме:

Шаблон е посебен вид документ кој има однапред дефинирани уредувања, распореди и дизајн според кои ќе се креираат некои идни документи со иста структура

Формулари се вид шаблони кои содржат фиксен текст кој не се менува и полиња кои корисникт треба да ги пополни. Полиња во формулар се подрачја во кои корисниците сами  внесуваат текст или одговор на некое поставено прашање. Полето може да биде текстуално, паѓачка листа , поле за означување и слично.

  1. Во сликата долу означи ги полињата
     Поле за означување (check box content)

     Поле за слика

     Поле за комбинирана рамка (combo box content )

     Поле за паѓачка листа (drop down list content)

     Текстуално поле (rich text)



Legacy form fields are the field types that were available in earlier versions of Word. You can continue to use them in Word 2013, and you must use them for forms to be saved in Word 97– 2003 format

Задача:
1. Од галеријата со шаблони најди шаблон по сопствен избор и внеси текст. Зачувај го документот!
2. Креирање насловна страна на семинарска како формулар ( страна 76 )


За ДОМА :
Креирај сопствен шаблон: (инструкции)
Отвори нов документ.
Постави хедер и футер на документот,  уредувања по сопствена желба - форматирај ги знаците и параграфите, рамка на текстот, вметни слика или клипарт, вметни уметнички текст, сенки, постави позадина на документот.
Зачувај го документот. Во делот file name се внесува име на шаблонот. Во делот save as type: се бара document template и тој има наставка .dotx.

Следниот пат кога ќе се отвора нов документ во My Templates ќе се отвори дијалог прозорец од кој може да се избере креираниот шаблон. 

Креирање шаблон
Користење претходно креиран шаблон
Кога се креира некој документ, може да се креира на нов празен документ или на некој шаблон од дефинираните во word. Тоа е документ или примерок што може да се уредува.
  1. Користење на готов шаблон:    File - new
             Може да се пристапи на шаблони кои се наоѓаат на локациите:
            Available Templates
            office.com Templates
Креирање сопствен шаблон
Отвараш нов документ          File à New
Се изработува шаблонот и се зачувува како тип  (save as type -- ) word template. Како шаблон се зачувува во прозорецот Templates.


Кога имаме потреба од овој тип шаблон, го отвараме , вршиме промени и зачувуваме со Save as  и тип документ word document 

Шаблони  

Квиз_Дарија

Заштита на документ 

Прашања и задачи :

  1. Зошто се поставува заштита на документ?
  2. Што е лозинка, какви типови лозинки постојат?
  3. Постави заштита на документ !
  4. Објасни ја заштитата (во прозорецот Save as копче Tools à General Options
  5. Каква заштита ќе постигнеш со избор на картичка Review копче Restrict Editing 

Formating resriction
Editing restriction
Start enforcement ( изврши, спроведи )

Често се јавува потреба документите да се заштитат. Тие некогаш се заштитуваат од недозволено читање, а некогаш од недозволено менување. Постојат два вида на заштита: заштита со лозинка и заштита со давање на атрибутот ( само за читање) Read Only

При заштита со лозинка , докуменот можат да го отворат или менуваат само корисниците кои ја знаат лозинката. Постојат два типа на лозинка:
-       Password to open ( за да се отвори документот мора да се внесе лозинка)
-       Password to modify ( заштита од менување на документот)


Еден од начините да се постави лозинка е при зачувување на документот  (во прозорецот Save as копче Tools à General Options)