- Функции без параметри
- да се напише програма с функции за отпечатване на различни емотикони; с тяхна помощ да се отпечата кратък разговор
- да се напише програма с отделни функции за отпечатване на трите имена, друга за адреса и трета за телефона и с тяхна помощ – функции за различни модели визитки
- да се напише програма с функции за отпечатване на екрана на квадрат и триъгълник от звездички
- да се напише програма с функции за отпечатване на букви S и O от звездички. С тяхна помощ да се отпечата вертикално SOS от звезди.
- да се напише програма с функции за отпечатване на букви S, L и O по морзовата азбука. С тяхна помощ да се отпечата SOS OSLO на морз.
- да се напише програма с 4 функции, които в зависимост от стойността на глобална булева променлива translate отпечатват командите „нагоре“, „надясно“, „наляво“ и „надолу“ на български или преведени на английски. С помощта на тези функции да се опише как става изписването на буквите L, Е, H
- Функции с параметри
- да се напише програма с функции за отпечатване на координатите на точка на екрана ; в кой квадрант е и дали лежи на някоя ос и ако да – на коя
- да се напише програма с функции за отпечатване на екрана на N на брой звездички на един ред и друга за за отпечатване на две звездички с M на брой интервала помежду им. Да се отпечата с помощта на тези функции квадрат със страна N зввезди и правоъгълник със страни M и N звезди
- да се направи програма с функция за отпечатване на един ред на N пъти цифрата X и друга за отпечатване на един ред на цифрите от 1 до X. С тяхна помощ да се отпечатат: квадрати от цифрите (1 x 1, 2 x 2, 3 x 3 и т.н.) и стълбица от цифри (1; 1 2; 1 2 3; 1 2 3 4; и т.н.)
- да се напише програма с функции, които в зависимост от стойността на глобална булева променлива translate отпечатват командите „напред“, „надясно“, „наляво“ на български или преведени на английски. След думата да се извежда стойността на числов параметър след нея (указващ стъпки или градуси, съответно) – например „напред 4 (стъпки)“ или „надясно 90 (градуса)“. С помощта на тези функции да се опише как става изчертаването на квадрат, правоъгълник и равностранен триъгълник с различна големина.
- Функции с параметри и връщащи резултат
- да се направи програма с функции за пресмятане на обиколката на равностранен триъгълник и квадрат и с тяхна помощ да се пресметне обиколката на четирилъчна звезда, съставена от равностранни триъгълници със страна 4 см.
- да се напише програма с функции за отпечатване на координатите на точка на екрана ; дали лежи на някоя ос и ако да – на коя; в кой квадрант е; отпечатване на пълната информация за точка (без дублиране на код!)
- да се направи програма с функция за пресмятане на лице на правоъгълник и с нейна помощ да се пресметне лицето на имот във формата на буквата Ш с дебелина на чертите 10 м и разстояния между тях пак толкова и височина 15 метра.
- да се направи програма с функции за проверка дали 2, 3, 4 и 5 числа са в нарастващ ред. Да се демонстрират функциите с проверка дали 15 числа са в нарастващ ред.
- напишете функция, която по дадени число X и валиден интервал (A, B) определя дали числото Х е в интервала (A, B) и с нейна помощ проверете дали два и три интервала са вложени един в друг.
- да се направи програма с демонстрация на намиране на най-голямото от 2, 3, 4, 5, 6, 7, 8, 9, 10 числа – по възможно най-ефективния и кратък начин, без дублиране на код.
- Функции с двупосочни параметри
- да се направи програма с функции завръщане на датата на създаване на програма, за въвеждане на дата от клавиатурата, за отпечатване на дата и друга функция, отпечатваща дали две дати са равни или ако не са, коя е по-голяма
- да се напише програма с функции за отпечатване на координатите на точка на екрана ; преобразуване на точка в огледалната й спрямо X оста; преобразуване на точка в огледалната й спрямо Y оста и спрямо центъра на координатната система
- Да се напише програма с функции за преминаване в следващ и предишен ден, месец, и година и отпечатване на тези дати в различен формат.
- Функции с двупосочни параметри и връщащи резултат
- да се напише програма с функции за отпечатване на дата, за проверка дали дадена дата е валидна и за преминаване към следващ ден, месец и година
- да се напише програма с функция, която проверява дали три страни са валидни страни на триъгълник и ако да – намира обиколката и лицето му; с нейна помощ да се отпечата общата площ и периметър на триъгълниците от следните тройки числа: (1, 2, 3), (1, 3, 3), (4, 2, 1), (5, 3, 2), (6, 4, 3) и броят на изведат корените на уравненията 2x-6=0; 0x+6=0; 0x=0 , както и колко на брой от уравненията имат решение.
- да се напише програма с функция за линейно уравнение и с нейна помощ да се изведат корените на уравненията 2x-6=0; 0x+6=0; 0x=0 , както и колко на брой от уравненията имат решение.
Всички задачи за:
Оградете кода с:
[c] за С++ програми [/c]
[pascal] за паскал [/pascal]Достъп до сайта:
С повишена трудност:
Задачите със звездичка са с повишена трудност - решавайте ги, ако сте решили другите.-
Последни задачи:
Последни решения:
- Marin

за Къде се намира точка - Marin

за Вмъкване и изтриване на елемент * - Marin

за Позицията на X - Alexander1





за Броят на максималните елементи - Alexander1





за Броят на максималните елементи - Marin

за Пари за закуска - Alexander1





за Ученици с дадена оценка - Alexander1





за По-големи от средното
- Marin
Топ участници за момента:
kaloyan164 решения/коментараGadget131 решения/коментараdreanor112 решения/коментараmarant74 решения/коментараsup3rEva68 решения/коментараБоряна65 решения/коментараNadq53 решения/коментараmaleboldjia48 решения/коментараkrisizdravi9543 решения/коментараMartinPlamenov38 решения/коментараЗадачи за дата:
октомври 2026 П В С Ч П С Н « февр. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Предишни задачи:
- февруари 2017 (38)
- януари 2017 (16)
- декември 2016 (17)
- ноември 2016 (14)
- октомври 2016 (26)
- юни 2016 (3)
- май 2016 (15)
- април 2016 (12)
- март 2016 (14)
- февруари 2016 (9)
- май 2015 (2)
- април 2015 (8)
- март 2015 (8)
- февруари 2015 (13)
- януари 2015 (11)
- декември 2014 (9)
- ноември 2014 (24)
- октомври 2014 (16)
- юни 2014 (2)
- май 2014 (8)
- април 2014 (10)
- март 2014 (14)
- февруари 2014 (22)
- януари 2014 (25)
- декември 2013 (27)
- ноември 2013 (37)
- октомври 2013 (38)
- септември 2013 (2)
- юни 2013 (6)
- май 2013 (10)
- април 2013 (19)
- март 2013 (35)
- февруари 2013 (32)
- януари 2013 (29)
- декември 2012 (28)
- ноември 2012 (37)
- октомври 2012 (26)
- септември 2012 (3)
- май 2012 (16)
- април 2012 (16)
- март 2012 (27)
- февруари 2012 (10)
- януари 2012 (13)
- ноември 2011 (16)
- октомври 2011 (8)
- април 2011 (4)
- март 2011 (19)
- февруари 2011 (19)
- януари 2011 (18)
- декември 2010 (25)
- ноември 2010 (10)
- октомври 2010 (33)
- септември 2010 (1)
По теми:
- break
- бройни системи
- булев тип
- вариантен избор
- вложена условна команда
- вложени цикли
- дати
- динамична променлива
- дървета
- запис
- изброим тип
- класове
- манипулатори на извеждането
- масив
- масив от записи
- многомерни масиви
- множества
- модули
- низ
- низове
- низови функции
- опашки
- отпечатване
- преобразуване на типовете
- реален тип
- рекурсия
- символен тип
- сортиране на масиви
- специфични операции за цели числа
- списъци
- стекове
- структури
- текстов файл
- типизирани файлове
- условна команда
- файл
- функции
- хедър файлове
- целочислен тип
- цикъл do-while
- цикъл for
- цикъл repeat
- цикъл while
- цифри на число
- шах
Всички задачи:
- 2016-2017 (111)
- Архив задачи (791)
- 2010-2011 (131)
- Информатика (131)
- 2011-2012 (109)
- ЗИП Информатика (4)
- 10в (4)
- Информатика (105)
- ЗИП Информатика (4)
- 2012-2013 (227)
- 2013-2014 (182)
- 2014-2015 (91)
- 2015-2016 (53)
- 2010-2011 (131)
Мета
Препоръчваме хостинг:

1/ A
#include <cstdlib> #include <iostream> using namespace std; void smile(){ cout<<":)"; } void frown(){ cout<<":("; } void surprised(){ cout<<"O.O"; } void whatever(){ cout<<":/"; } int main(int argc, char** argv) { cout<<"A: Kak si brat "; smile(); cout<<endl; cout<<"B: Zle, brato, winoto swurshi "; frown(); cout<<endl; cout<<"A: No kak e vuzmojno, to beshe kum 10 bidona ? ";surprised(); cout<<endl; cout<<"B: Emi, ne me li poznawash "; whatever(); return 0; }#include <iostream> #include <cstdlib> #include <iostream> #include <cmath> using namespace std; //??????? ??? ????????? A) void happy(){ cout<<":)"; } void sad(){ cout<<":("; } void laugh(){ cout<<":D"; } int main(){ cout<<"T:Shte idvash li dnes da qdeme shkembe chorba"; happy(); cout<<endl<<"A:Sorry nqma da moga"; sad(); cout<<endl<<"A:Bzkm se shte doida"; laugh(); return 0; }#include <iostream> #include <cstdlib> #include <iostream> #include <cmath> using namespace std; //Функции без параметри Д) void sa(){ cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl; cout<<" *****"<<endl<<endl; } void oto(){ cout<<" ****** "<<endl; cout<<" **** ****"<<endl; cout<<"**** ****"<<endl; cout<<" **** ****"<<endl; cout<<" **** ****"<<endl; cout<<" **** ****"<<endl; cout<<" **** ****"<<endl; cout<<" *****"<<endl<<endl; } int main(){ sa(); oto(); sa(); return 0; }1/d
#include <cstdlib> #include <iostream> using namespace std; void s(){ cout<<" ******"<<endl; cout<<" ****** "<<endl; cout<<" ****** "<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; cout<<" ******"<<endl; } void o(){ cout<<" **************"<<endl; cout<<" ****** ******"<<endl; cout<<" ****** ****** "<<endl; cout<<" ****** ******"<<endl; cout<<" ****** ******"<<endl; cout<<" ****** ******"<<endl; cout<<" ****** ******"<<endl; cout<<" *************"<<endl; } int main(int argc, char** argv) { s(); cout<<endl; o();cout<<endl; s(); cout<<endl; return 0; }#include <iostream> #include <cstdlib> #include <iostream> #include <cmath> using namespace std; //Функции с параметри А) //да се напише програма с функции за отпечатване на координатите на точка на екрана ; в кой квадрант е и дали лежи на някоя ос и ако да – на ко void kordinati(double x,double y){ cout<<"("<<x<<";"<<y<<")"<<endl; if (x==0&&y!=0) { cout<<"Funkciqta leji na ordinatnata os!"; } else if (y==0&&x!=0) { cout<<"Funkciqta leji na abcisnata os!"; } else if (y==0&&x==0){ cout<<"Funkciqta leji na abcisnata i na ordinatnata os!"; } else if (x>0) { if (y>0) cout<<"I kvadrant"; else cout<<"II kvadrant"; } else if (y<0) { if (x<0) cout<<"III kvadrant"; else cout<<"IV kvadrant"; } } int main (){ double x,y; cout<<"Vuvedete dve kordinatni tochki!"<<endl; cout<<"X:"<<endl; cin>>x; cout<<"Y:"<<endl; cin>>y; kordinati(x,y); return 0; }Марти, това трябваше да са три функции, а не една. Иначе – перфектно направено!
#include <cstdlib> #include <iostream> using namespace std; /*?? ?? ?????? ???????? ? ??????? ?? ??????????? ?? ?????? ?? N ?? ???? ????????? ?? ???? ??? ? ????? ?? ?? ??????????? ?? ??? ????????? ? M ?? ???? ????????? ??????? ??. ?? ?? ???????? ? ??????? ?? ???? ??????? ??????? ??? ?????? N ??????? ? ???????????? ??? ?????? M ? N ?????? */ int zwezdinared(int n){ for (int a=1; a<=n; a++){ cout<<"*"; } } int zwezdisinterwal(int m){ cout<<"*"; for (int a=1; a<m; a++){ cout<<" "; } cout<<"*"; } int kwadratN(int n){ zwezdinared(n); for(int a=1; a<=n; a++){ zwezdisinterwal(n); cout<<endl; } zwezdinared(n); } int main(int argc, char** argv) { kwadratN(4); return 0; }Богдане, добре си се ориентирал. Но дали прави квадрат?
Това го сложих само за да си запиша кода, сега ще го направя като хората.
2/b преработена
#include <cstdlib> #include <iostream> using namespace std; /*?? ?? ?????? ???????? ? ??????? ?? ??????????? ?? ?????? ?? N ?? ???? ????????? ?? ???? ??? ? ????? ?? ?? ??????????? ?? ??? ????????? ? M ?? ???? ????????? ??????? ??. ?? ?? ???????? ? ??????? ?? ???? ??????? ??????? ??? ?????? N ??????? ? ???????????? ??? ?????? M ? N ?????? */ int zwezdinared(int n){ for (int a=1; a<=n; a++){ cout<<"*"; } } int zwezdisinterwal(int m){ cout<<"*"; for (int a=1; a<=m; a++){ cout<<" "; } cout<<"*"; } int kwadratN(int n){ zwezdinared(n); cout <<"\n"; for(int a=1; a<=n-2; a++){ zwezdisinterwal(n-2); cout <<"\n"; } zwezdinared(n); } int prawougulnik(int n, int m){ zwezdinared(n); cout <<"\n"; for(int a=1; a<=m-2; a++){ zwezdisinterwal(n-2); cout <<"\n"; } zwezdinared(n); } int main(int argc, char** argv) { kwadratN(4); cout<<endl; prawougulnik(7,10); return 0; }Да, сега вече е добре. :-)
3/а
#include <cstdlib> #include <iostream> using namespace std; /*да се направи програма с функции за пресмятане на обиколката на равностранен триъгълник и квадрат и с тяхна помощ да се пресметне обиколката на четирилъчна звезда, съставена от равностранни триъгълници със страна 4 см. */ double triugulnik_obikolka(double &a){ return 3*a; } double kwadrat_obikolka(double &a){ return 4*a; } double zwezda(double a){ cout<<(4*triugulnik_obikolka(a))-kwadrat_obikolka(a); } int main(int argc, char** argv) { zwezda(4); return 0; }Добре! А дали не можем да имаме и функция, която ни дава информация за обиколката на звездата? Може да ни потрябва за смятане на обиколката на всички звезди от звездното небе, примерно… :-) Разбираш идеята…
Защо обаче ти е този & при параметрите?
#include <iostream> using namespace std; //2 b)?? ?? ?????? ???????? ? ??????? ?? ??????????? ?? ?????? ?? N ?? ???? ????????? ?? ???? ??? ? ????? ?? ?? ??????????? ?? ??? ????????? ? M ?? ???? ????????? ??????? ??. ?? ?? ???????? ? ??????? ?? ???? ??????? ??????? ??? ?????? N ??????? ? ???????????? ??? ?????? M ? N ?????? int zvezdi(int broi){ int zvezdi=0; while (zvezdi<broi){ cout<<"*"; zvezdi++; } } int zvezdiInterval(int broi){ int interval=0; cout<<"*"; while (interval<broi){ cout<<" "; interval++; }; cout<<"*"; }//Pravi kvadrat int kvadrat(int n){ for(int i=0;i<n;i++){ zvezdi(n); cout<<endl; } }//Pravi pravougulnik int pravougulnik(int n,int m){ for (int i=0;i<m;i++){ zvezdi(n); cout<<endl; } } int main(int argc, char** argv) { //zvezdi(9); //zvezdiInterval(12); //kvadrat(5); //pravougulnik(10,2); return 0; }Марти, перфектно! При теб обаче прави запълнени фигури, а на мен идеята ми беше празни, за да се ползват първите две функции. Но и така става. :-)
//1A #include<iostream> using namespace std; void heart (void) { cout<<"<3"<<endl; } void kiss (void) { cout<<":*"<<endl; } void hug (void) { cout<<"(hug)"<<endl; } void smile (void) { cout<<":)"<<endl; } int main () { cout<<"A: Hello, bae! "; heart(); cout<<"B: Hello dear! "; kiss(); cout<<"A: How are you? "; heart(); cout<<"B: Not too bad. "; smile(); cout<<"A: Hmmm, okay. "; hug(); return 0; } //1B #include<iostream> using namespace std; void name (void) { cout<<"name: "<<endl; cout<<"surname: "<<endl; cout<<"family: "<<endl; } void addres (void) { cout<<"street: "<<endl; cout<<"number: "<<endl; cout<<"town: "<<endl; } void number (void) { cout<<"telephone number: "<<endl; } int main() { name(); addres(); number(); return 0; } //1E #include<iostream> using namespace std; void s(void) { cout<<" ***"<<endl; cout<<" *"<<endl; cout<<" ***"<<endl; cout<<" *"<<endl; cout<<" ***"<<endl; } void o(void) { cout<<" ***"<<endl; cout<<" * *"<<endl; cout<<" * *"<<endl; cout<<" * *"<<endl; cout<<" ***"<<endl; } void l(void){ cout<<" * "<<endl; cout<<" * "<<endl; cout<<" * "<<endl; cout<<" * "<<endl; cout<<" ***"<<endl; } int main(int argc, char** argv) { s(); cout<<endl; o(); cout<<endl; s(); cout<<endl; o(); cout<<endl; s(); cout<<endl; l(); cout<<endl; o(); cout<<endl; return 0; } 2A #include<iostream> using namespace std; int quadrant(int x, int y) { if((x>0)and(y>0)) { cout<<"purvi kvadrant"<<endl; } return 1; if((x<0)and(y>0)) { cout<<"vtori kvadrant"<<endl; } return 2; if((y<0)and(x<0)) { cout<<"treti kvadrant"<<endl; } return 3; if((x>0)and(y<0)) { cout<<"chetvurti kvadrant"<<endl; } return 4; } int main() { int a,b; cin>>a>>b; quadrant(a,b); return 0; }Охо, четири задачи! „Not too bad!“; smile();
//2B #include<iostream> using namespace std; int Nstars(int n ) { int p=0; while(p<n) { cout<<"*"; n--; } cout<<endl; } int TWO_stars(int m) { int p=0; cout<<"*"; while(p<m) { cout<<" "; m--; } cout<<"*"; cout<<endl; } int kvadrat (int n) { Nstars(n); for(int p=1; p<=n-2; p++) { TWO_stars(n-2); cout <<endl; } Nstars(n); } int pravougulnik (int n, int m) { Nstars(n); for(int p=1; p<=m-2; p++) { TWO_stars(n-2); cout <<endl; } Nstars(n); } int main() { kvadrat(5); pravougulnik(10,15); return 0; }Браво, супер е направена!
//na 2C trqbva chrez tezi 2 funkcii li da se izpulnat stulbicacta i kvadratite?
#include<iostream> using namespace std; int ch_n_x (int n, int x) { for(int i=1; i<=n; i++) { cout<<x<<" "; } } int edno_x (int x) { int p=1; cout<<p<<" "; for(int i=1; i<x; i++) { cout<<i+1<<" "; } } int main() { int n,x; cin>>n>>x; return 0; }Да. Първата е супер, втората може да се оптимизира – защо първо печатиш p?
//1a
//?? ?? ?????? ???????? ? ??????? ?? ??????????? ?? ???????? ?????????; ? ????? ????? ?? ?? ???????? ?????? ????????
#include
using namespace std;
void yell(){
cout<:o“;
}
void cool(){
cout<<"8)";
}
void sad(){
cout<<":(";
}
void laughing(){
cout<<":D";
}
void favemoticon(){
cout<<"-_-";
}
int main()
{
cout<<"A: Zashto ne mi digash telefona? ";
yell();
cout<<"B: Zahtoto bqh na basein ";
cool();
cout<<"A: I ne mi vikna s teb..? ";
sad();
cout<<"B: Nqmashe mqsto v baseina.. ";
laughing();
cout<<"A: K. ";
favemoticon();
return 0;
}
Я, Симона! Добре дошла обратно в СИП-а! Липсваше… :-)
#include
//1b
//da se napishe programa s otdelni funkcii za otpechatvane na trite imena, druga za adresa i treta za telefona i s tqhna pomosht – funkcii za razlichni modeli vizitki
using namespace std;
void ime()
{
cout<<"ime: "<<endl;
cout<<"prezime: "<<endl;
cout<<"familiq: "<<endl;
}
void adres()
{
cout<<"grad: "<<endl;
cout<<"ulica: "<<endl;
cout<<"nomer: "<<endl;
cout<<"blok: "<<endl;
cout<<"vhod: "<<endl;
cout<<"etaj: "<<endl;
cout<<"apartament: "<<endl;
}
void telefon()
{
cout<<"telefonen nomer: "<<endl;
}
int main() {
ime();
adres();
telefon();
return 0;
}
Ако искаш да ти се оцветява кода както на другите, постави [c] преди кода и [/c] след него. А за да са коментарите ти на кирилица преключи на БГ клавиатурата преди да копираш текста и преди да го поставиш.
Doobre
#include <cstdlib> #include <iostream> #include <cmath> //3 Б да се направи програма с функции за пресмятане на обиколката на равностранен триъгълник и квадрат и с тяхна помощ да се пресметне обиколката на четирилъчна звезда, съставена от равностранни триъгълници със страна 4 см. using namespace std; int obikolkaTri(int a){ return 3*a; } int obikolkaKva(int a){ return 4*a; } int main(){ cout<<"Obikolkata na chetrilucha zvezda e:"<<4*obikolkaTri(4)+obikolkaKva(4); return 0; }#include <cstdlib> #include <iostream> #include <cmath> //3 Г да се направи програма с функция за пресмятане на лице на правоъгълник и с нейна помощ да се пресметне лицето на имот във формата на буквата Ш с дебелина на чертите 10 м и разстояния между тях пак толкова и височина 15 метра. using namespace std; int licePravougulnik(int a,int b){ return 2*(a+b); } int main(){ cout<<"Obikolkata na imot s forma Ш e:"<<3*licePravougulnik(10,5)+licePravougulnik(10,15); return 0; }#include <cstdlib> #include <iostream> #include <cmath> using namespace std; //3 Е Гнапишете функция, която по дадени число X и валиден интервал (A, B) определя дали числото Х е в интервала (A, B) и с нейна помощ проверете дали два и три интервала са вложени един в друг. bool interval(double a,double b,double x){ double max,min; if (a>b) { max=a; min=b; } else { max=b; min=a; } if ((x>=min)&&(x<=max)){ return true; } else { return false; } } //Проверка на два интервала bool proverkaInterval(double a,double b,double x,double y){ double min,min1,max,max1; if(a>b) { max=a; min=b; } else { max=b; min=a; ; } if (x>y) { max1=x; min1=y; } else { max1=y; min1=x; } if((max>=max1)&&(min<=min1)) { return true; } else if((max1>=max)&&(min1<=min)) { return true; } else { return false; } } int main(){ if(proverkaInterval(2,3,1,6)){ cout<<"Dvata intervala sa vlojeni edin v drug!"; } else cout<<"Dvata intervala ne sa vlojeni edin v drug!"; return 0; }Марти, супер си се сетил да разгледаш и двата случая – че може всеки от модулите да е вложен в другия. Но това може да се провери и с една функция, извикана два пъти с разменени параметри. Например:
bool ABinXY(double a, double b, double x, double y) { // тук кода за проверка дали (a, b) е вложен в интервала (x, y) } bool proverkaInterval(double a, double b, double x, double y) { return ABinXY(a, b, x, y) or ABinXY(x, y, a, b); }Виж, щом има повторения в кода, значи може още да се оптимизира, като се изнесат във функция.
//3A
#include <iostream> using namespace std; int triug (int a) { return 3*a; } int kvadrat (int a) { return 4*a; } int main() { cout<<((4*triug(4))-kvadrat(4))<<endl; return 0; }#include <cstdlib> #include <iostream> using namespace std; /*да се направи програма с функции за проверка дали 2, 3, 4 и 5 числа са в нарастващ ред. Да се демонстрират функциите с проверка дали 15 числа са в нарастващ ред.*/ bool dwe(double a, double b){ return (a<b); } bool tri(double a, double b, double c){ return (dwe(a,b))&&(dwe(b,c)); } //използваме фукнциата за 3 числа и след това за две , по този начин се застъпват и се получава за 4 числа bool chetiri (double a, double b, double c, double d ){ return (tri(a,b,c)&&dwe(c,d)); } //използваме предишната функция за улеснение bool pet (double a, double b, double c, double d, double e ){ return (chetiri(a,b,c,d)&&dwe(d,e)); } //Използваме предишните функций като блокчета, за да направим функция за 15 числа //забележете, че трябва да има застъпващи се променливи във функцийте иначе програмата няма да сработи bool petnaiset (int a, int b, int c, int d, int e, int f, int g, int h, int i, int j, int k, int l, int m, int n, int o){ return (pet(a,b,c,d,e)&&pet(e,f,g,h,i)&&pet(j,k,l,m,n)&&dwe(n,o)); } int main(int argc, char** argv) { if(petnaiset(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)) cout<<"narastwasht"; return 0; }3/d задача*
Еха, това се казва подробен коментар, благодаря ти за поясненията! :-) Е, и без да се застъпват ще работи, но няма да е вярно… :-)
//1F
#include <iostream> using namespace std; void nagore(void) { cout<<"nagore"<<endl; } void nadolu(void) { cout<<"nadolu"<<endl; } void nalqvo(void) { cout<<"nalqvo"<<endl; } void nadqsno(void) { cout<<"nadqsno"<<endl; } void L (void) { nadolu(); nadqsno(); } int E (void) { nalqvo(); nadolu(); nadqsno(); nalqvo(); nadolu(); nadqsno(); } int main () { //l(); //E(); return 0; }Браво, Иви! Опитай да добавиш булевата променлива за превод…
#include <cstdlib> #include <iostream> using namespace std; void ime(){ cout <<"IME: "<<"Vancho "<<endl; } void adress(){ cout <<"ADRESS: "<< "lom, svoboda 8"<<endl; } void telefon(){ cout <<"Telephone: "<<"090831234"<<endl; } int main(int argc, char** argv) { ime(); adress(); //Variant 1 telefon(); cout <<"----------------------------------"<<endl; adress(); //Variant 2 ime(); telefon(); cout <<"----------------------------------"<<endl; telefon(); ime(); adress(); cout <<"----------------------------------"<<endl; //Variant 3 adress(); telefon(); ime(); //Variant 4 return 0; }Браво, Марине!
#include <cstdlib> #include <iostream> #include <cmath> using namespace std; //3 F да се направи програма с демонстрация на намиране на най-голямото от 2, 3, 4, 5, 6, 7, 8, 9, 10 числа – по възможно най-ефективния и кратък начин, без дублиране на код. double max2(double a,double b){ double max; if (a>b) { max=a; } else { max=b; } return max; } double max3(double a,double b,double c){ return max2(a, max2(b,c)); } double max4(double a,double b,double c,double d){ return max2(max2(a,b),max2(c,d)); } double max5(double a,double b,double c,double d,double e){ return max2(max3(a,b,c),max2(d,e)); } double max6(double a,double b,double c,double d,double e,double f){ return max2(max4(a,b,c,d),max2(e,f)); } double max7(double a,double b,double c,double d,double e,double f,double g){ return max2(max6(a,b,c,d,e,f),g); } double max8(double a,double b,double c,double d,double e,double f,double g,double h){ return max2(max7(a,b,c,d,f,e,g),h); } int main(){ //Maksimalni stoinosti cout<<max2(4, 1)<<endl; //Vlagame maksimalan stoinost ot predishna funkciq kato parametur v sledvashtata; cout<<max3(1,10,3)<<endl; cout<<max4(4,5,10,2)<<endl; cout<<max5(0,2,19,6,7)<<endl; return 0; }#include <cstdlib> #include <iostream> //3a //Aleks i Simona :D using namespace std; int ObikolkaTriugulnik(int a) { return 3*a; } int ObikolkaKvadrat(int a) { return 4*a; } int ObikoplkaZvezda(int a){ return (4*ObikolkaTriugulnik(a))-(ObikolkaKvadrat(a)); } int main(int argc, char** argv) { cout<<"obikolkata na zvezdata e: "<<ObikoplkaZvezda(4); return 0; }#include <cstdlib> #include <iostream> //3c //Aleks i Simona :D using namespace std; //"a" e shirinata, "b" e visochinata int LicePravougulnik(int a, int b){ return a*b; } int LiceOsnova(int a, int b){ b=5*a; return a*b; } int LiceShuto(int a, int b){ return 3*LicePravougulnik(a,b)+LiceOsnova(a,b); } int main(int argc, char** argv) { cout<<"Liceto na imota e: "<<LiceShuto(10,15); return 0; }Супер, завършена! Но нали основата беше 5*а, или се бъркам?
#include <iostream> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ //5A да се напише програма с функции за отпечатване на дата, за проверка дали дадена дата е валидна и за преминаване към следващ ден, месец и година using namespace std; void Data(int &d, int &m, int &g){ if((d>0)&&(d<=31)&&(m>0)&&(m<=12)&&(g>0)){ cout<<"datata e validna"; } else{ cout<<" ne validna"<<endl; } } void SledvashtaData(int &d, int &m, int &g){ if(m==12){ m=m-12; g=1+g; } if(d==31){ d=d-30; m=1+m; } else{ d=1+d; } cout<<d<<"."<<m<<"."<<g; } int main(int argc, char** argv) { int d,m,g; cout<<"vavedete validna data "; cin>>d>>m>>g; Data(d,m,g); cout<<" ,sled data e "; SledvashtaData(d,m,g); return 0; }Алекс, погледни пак защо и кога ползваме &. Функцията за проверка валидността на дата трябва да връща дали датата е валидна, а не да го отпечатва. Пробвай коя е следващата дата ако въведеш 9 12 2016. :-)
#include <iostream> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ //5A да се напише програма с функции за отпечатване на дата, за проверка дали дадена дата е валидна и за преминаване към следващ ден, месец и година //Fixed !! using namespace std; void Data(int &d, int &m, int &g){ if((d>0)&&(d<=31)&&(m>0)&&(m<=12)&&(g>0)){ cout<<"datata e validna"; } else{ cout<<" ne validna"<<endl; } } void SledvashtaData(int &d, int &m, int &g){ if((m==12)&&(d==31)){ m=m-12; g=1+g; } if(d==31){ d=d-30; m=1+m; } else{ d=1+d; } cout<<d<<"."<<m<<"."<<g; } int main(int argc, char** argv) { int d,m,g; cout<<"vavedete validna data "; cin>>d>>m>>g; Data(d,m,g); cout<<" ,sled data e "; SledvashtaData(d,m,g); return 0; }И тук важи коментара от предното ти решение.
Не знам дали това се иска,но се опитах да добавя и специфичните случаи (няма за високосна година :D)
#include <cstdlib> #include <iostream> #include <cmath> using namespace std; //Да се напише програма с функции за преминаване в следващ и предишен ден, месец, и година и отпечатване на тези дати в различен формат. //char p=dali da pribavq ili namalq denq/meseca/godinata int nden,nmesec,ngodina; bool preminavane(int& d,int& m,int& y,char p){ if (p=='>'){ ngodina=y+1; //Tuk shte provermqvame dali ne e kraq na meseca i ako e shte uvelichavame mesecites dva a ne s edin! switch(m){ case 1: case 3: case 5: case 7: case 8: case 10:if(d==31){ nden=1; nmesec=m+2; } else{ nden=d+1; nmesec=m+1; } return true; break; case 12:if(d==31){ nden=1; nmesec=1; return true; break; case 11: case 4: case 6: case 9:if(d==30){ nden=1; nmesec=m+2; } else { nden=d+1; nmesec=m+1; } return true; break; case 2: if(d==28){ nden=1; nmesec=m+2; } else{ nden=d+1; nmesec=m+1; } return true; break; default: return false; } } } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// else if (p=='<'){ ngodina=y-1; if(d==1){ switch(m){ case 1:m=14; case 3: case 5: case 7: case 8: case 10: case 12: nden=31; nmesec=m-2; return true; break; case 11: case 4: case 6: case 9: nden=30; nmesec=m-2; return true; break; case 2: nden=28; nmesec=m-2; return true; break; default: return false; } } else { nden=d-1; nmesec=m-1; } } } int main(){ int d,m,y; char p; cin>>d>>m>>y>>p; if (preminavane(d,m,y,p)){ cout<<nden<<" "<<nmesec<<" "<<ngodina; }else { cout<<"Nevalidno"; } return 0; }Внушителна програма, Марти, и си личи, че си разгледал много случаи. Но помисли, на кой би му била нужна функция, която увеличава или намалява с един ден, месец и година едновременно? Това трябваше да са отделни функции – една за +1 ден, една за -1 ден, една за +1 месец и т.н. И трябва да се върне като резултат, а не да се отпечатва на екрана. И тествал ли си за граничните случаи – например 31.12.2016 + 1 и 1.1.2017 – 1?