Advertisement
Guest User

sve 2

a guest
Jan 17th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.68 KB | None | 0 0
  1. // ConsoleApplication2.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <stdio.h>
  6. #include <iostream>
  7. #include <string.h>
  8. using namespace std;
  9.  
  10. int zbirNaCifri(int br)
  11. {
  12. int c, zbir=0;
  13. for(c=br; c>0; c=c/10)
  14. {
  15. zbir+= c%10;
  16. }
  17.  
  18. return zbir;
  19. }
  20.  
  21. int brojNaDeliteli(int br)
  22. {
  23. int del,brojac=0;
  24. for(del=1;del<=br;del++)
  25. {
  26. if(br%del==0)
  27. {
  28. brojac++;
  29. }
  30. }
  31. return brojac;
  32. }
  33.  
  34. void isprintajNiza(int niza[], int br)
  35. {
  36. int i;
  37. for(i=0; i<br; i++)
  38. {
  39. printf("%d, ", niza[i]);
  40. }
  41.  
  42. printf("\n");
  43. }
  44.  
  45. int najdiMaksimum(int niza[], int br)
  46.  
  47. {
  48. int i,max=niza[0];
  49. for(i=0;i<br;i++){
  50. if(niza[i]>max)
  51. {
  52. max=niza[i];
  53. }
  54. }
  55. return max;
  56. }
  57.  
  58. int najdiMinimum(int niza[], int br){
  59. int i, min=niza[0];
  60. for(i=0;i<br;i++)
  61. {
  62. if(niza[i]<min){
  63. min=niza[i];
  64. }
  65. }
  66. return min;
  67. }
  68. int najdiRang(int niza[], int br)
  69. {
  70. return najdiMaksimum(niza,br)-najdiMinimum(niza,br);
  71. }
  72.  
  73. int maximalenPar(int niza[],int br)
  74. {
  75. int i,j,zbir=0,max=niza[0]+niza[1];
  76. for(i=0,j=1;i<br&&j<br;i++,j++)
  77. {
  78. zbir=niza[i]+niza[j];
  79. if(zbir>max){
  80. max=zbir;
  81. }
  82.  
  83. }
  84. return max;
  85. }
  86.  
  87.  
  88. int daliGoIma(int baran,int niza[], int br){
  89. int i;
  90. int goNajdov = 0;
  91. for(i=0;i<br;i++){
  92. if(baran==niza[i]){
  93. goNajdov = 1;
  94. break;
  95. }
  96. }
  97.  
  98. return goNajdov;
  99. }
  100.  
  101. int daliEPalindrom(int niza[], int br){
  102. int i,j;
  103. for(i=0,j=br-1;i<br&&j>=0;i++,j--){
  104. if(niza[i]!=niza[j]){
  105. return 0;
  106. }
  107.  
  108. }
  109. return 1;
  110. }
  111.  
  112. void zgolemi(int* a)
  113. {
  114. (*a)++;
  115. }
  116.  
  117. int dolzina( char* zbor)
  118. {
  119. int i=0;
  120. while( (*zbor) != '\0')
  121. {
  122. i++;
  123. zbor++;
  124. }
  125.  
  126. return i;
  127. }
  128.  
  129. int daliEPalindrom(char* zbor)
  130. {
  131. int i,j;
  132. int n = dolzina(zbor);
  133. for(i=0, j=n-1; i<n && j>=0; i++, j--){
  134. if(*(zbor+i)!=*(zbor+j)){
  135. return 0;
  136. }
  137. }
  138.  
  139. return 1;
  140. }
  141.  
  142. int daliEPalindrom2(char* zbor)
  143. {
  144. char *prv, *posl;
  145. prv=zbor;
  146. posl=zbor;
  147. while(*(posl+1)!='\0'){
  148. posl++;
  149. }
  150.  
  151. for( ; *prv!='\0'; prv++, posl--){
  152. if(*prv!=*posl){
  153. return 0;
  154. }
  155. }
  156.  
  157. return 1;
  158. }
  159.  
  160. int kolkuSamoglaski(char* zbor)
  161. {
  162. int br=0;
  163. for( ; *zbor!='\0';zbor++){
  164. if(*zbor=='a'||*zbor=='e'||*zbor=='i'||*zbor=='o'||*zbor=='u'||*zbor=='A'||*zbor=='E'||*zbor=='I'||*zbor=='O'||*zbor=='U'){
  165. br++;
  166. }
  167. }
  168. return br;
  169. }
  170. #define MAX 100
  171. int daliRecenicaEPalindrom(char *rec){
  172. int i=0;
  173. char nova[MAX];
  174. for(;*rec!='\0';rec++){
  175.  
  176. char buk = *rec;
  177. if(isspace(buk) || ispunct(buk)){
  178. continue;
  179. }
  180.  
  181. if(isupper(buk)){
  182. buk = tolower(buk);
  183. }
  184.  
  185. nova[i]=buk;
  186. i++;
  187.  
  188. }
  189.  
  190. nova[i]='\0';
  191.  
  192. return daliEPalindrom2(nova);
  193. }
  194.  
  195.  
  196. int count_char ( char * str , char c ) {
  197. int vkupno = 0 ;
  198. while (* str != '\0' ) {
  199. vkupno += (* str == c );
  200. str ++;
  201. }
  202. return vkupno ; }
  203.  
  204. int faktoriel(int broj){
  205.  
  206. int proizvod=1;
  207. for(int i=broj; i>0; i--)
  208. {
  209. proizvod=proizvod*i;
  210.  
  211. }
  212.  
  213. return proizvod;
  214. }
  215.  
  216. int fakt(int broj)
  217. {
  218. if(broj==1)
  219. {
  220. return 1;
  221. }
  222.  
  223. return broj * fakt(broj-1);
  224. }
  225.  
  226. int zbir(int* niza, int n)
  227. {
  228. if(n==1){
  229. return *niza;
  230. }
  231.  
  232. return *niza + zbir(niza+1 , n-1);
  233. }
  234.  
  235. int zbir2(int niza[], int n)
  236. {
  237. if(n==1){
  238. return niza[0];
  239. }
  240.  
  241. return niza[n-1] + zbir2(niza , n-1);
  242. }
  243.  
  244. int daliEProst(int n)
  245. {
  246. for(int i=2; i<n; i++){
  247. if(n%i==0){
  248. return 0;
  249. }
  250. }
  251.  
  252. return 1;
  253. }
  254.  
  255. int eProst(int n, int i)
  256. {
  257. if(i==n) {
  258. return 1;
  259. }
  260.  
  261. if(n%i==0){
  262. return 0;
  263. }
  264.  
  265. return eProst(n, i+1);
  266. }
  267.  
  268. int eProst(int n)
  269. {
  270. return eProst(n, 2);
  271. }
  272.  
  273. int zbirCifri(int n)
  274. {
  275. if(n/10==0)
  276. {
  277. return n;
  278. }
  279.  
  280. return n%10+zbirCifri(n/10);
  281. }
  282.  
  283. int brojNaOsmici(int n){
  284. if(n==0) return 0;
  285.  
  286. if(n%10!=8) return brojNaOsmici(n/10);
  287. if(n%10==8) return brojNaOsmici(n/10)+1;
  288. }
  289.  
  290. int nzd(int a, int b)
  291. {
  292. if(a==b) return a;
  293.  
  294. int pogolem, pomal;
  295. if(a>b){
  296. pogolem=a;
  297. pomal=b;
  298. }
  299. else{
  300. pogolem=b;
  301. pomal=a;
  302. }
  303.  
  304. return nzd(pogolem-pomal, pomal);
  305. }
  306.  
  307. int pogolem(int a, int b)
  308. {
  309. int pogolem, pomal;
  310. if(a>b){
  311. pogolem=a;
  312. pomal=b;
  313. }
  314. else{
  315. pogolem=b;
  316. pomal=a;
  317. }
  318.  
  319. return pogolem;
  320. }
  321.  
  322. int maxrek(int niza[], int n)
  323. {
  324. if(n==1){
  325. return niza[0];
  326. }
  327. return pogolem(niza[n-1],maxrek(niza, n-1));
  328. }
  329.  
  330. int e_bukva ( char c ) { return ( c >= 'a' && c <= 'z' ) || ( c >= 'A' && c <= 'Z' ); }
  331. int e_samoglaska ( char c ) { c = tolower ( c ); switch ( c ) { case 'a' : case 'e' : case 'i' : case 'o' : case 'u' : return 1 ; default : return 0 ; } }
  332.  
  333. int dalietakov(char *zbor){
  334. int brojac=0;
  335. char *glavna, *pomosna;
  336. for(glavna=zbor;*glavna!='\0';glavna++){
  337. brojac=0;
  338. for(pomosna=zbor; *pomosna!='\0'; pomosna++){
  339. if(tolower(*glavna)==tolower(*pomosna)){
  340. brojac++;
  341. }
  342. }
  343. if(brojac>2){
  344. return 1;
  345. }
  346. }
  347.  
  348. return 0;
  349. }
  350.  
  351. int palindrom(char *zbor, int n)
  352. {
  353. if(n==1) return 1;
  354. if(n==2){
  355. if(zbor[0]==zbor[1]){
  356. return 1;
  357. }
  358. else{
  359. return 0;
  360. }
  361. }
  362.  
  363. if(zbor[0]==zbor[n-1]){
  364. return palindrom(zbor+1, n-2);
  365. }
  366. else
  367. {
  368. return 0;
  369. }
  370. }
  371.  
  372. int palindrom(char *zbor)
  373. {
  374. int n=strlen(zbor);
  375. char *nov = zbor;
  376. if(n==1) return 1;
  377. if(n==2){
  378. if(zbor[0]==zbor[1]){
  379. return 1;
  380. }
  381. else{
  382. return 0;
  383. }
  384. }
  385.  
  386. if(zbor[0]==zbor[n-1]){
  387. strncpy(nov, zbor+1, n-2);
  388. return palindrom(nov);
  389. }
  390. else
  391. {
  392. return 0;
  393. }
  394. }
  395.  
  396. int eBukva(char c)
  397. {
  398. char m = tolower(c);
  399. if(m>='a' && m<='z') return 1;
  400. else return 0;
  401. }
  402.  
  403. int kolkuzboroviima(char *red){
  404. int dzbor=0, vkupno=0;
  405. for( ; *red!='\0'; red++){
  406. if(dzbor==1){
  407. if(eBukva(*red)){
  408. dzbor=1;
  409. }
  410. else{
  411. dzbor=0;
  412. }
  413. }
  414. else{
  415. if(eBukva(*red)){
  416. dzbor=1;
  417. vkupno++;
  418. }
  419. else{
  420. dzbor=0;
  421. }
  422. }
  423. }
  424.  
  425. return vkupno;
  426. }
  427.  
  428. int _tmain(int argc, _TCHAR* argv[])
  429. {
  430. int kraj, i, n=7, tmp;
  431. int niza[7]={ 6, -2, 5, 100, 4, 19};
  432. for(kraj=n-1; kraj>=1; kraj--){
  433. for(i=0; i<kraj; i++){
  434. if(niza[i]>niza[i+1]){
  435. tmp=niza[i];
  436. niza[i]=niza[i+1];
  437. niza[i+1]=tmp;
  438. }
  439. }
  440. }
  441.  
  442. isprintajNiza(niza, 7);
  443. getchar();
  444. getchar();
  445. return 0;
  446. }
  447.  
  448. /*
  449.  
  450. redot so najmnogu zborovi
  451.  
  452. FILE *vlezna;
  453. char red[100];
  454. int br, max=0;
  455. char najred[100];
  456. vlezna=fopen("redovi.txt", "r");
  457. if(vlezna==NULL){
  458. printf("fgfgfg");
  459. return -1;
  460. }
  461. while(fgets(red,100,vlezna)!=NULL){
  462. br=kolkuzboroviima(red);
  463. if(br>=max){
  464. max=br;
  465. strcpy(najred,red);
  466. }
  467. }
  468.  
  469. printf("%d",max);
  470. printf("%s",najred);
  471.  
  472. fclose(vlezna);
  473.  
  474. */
  475.  
  476. /*
  477.  
  478. kolku zborovi ima vo fajlot
  479.  
  480. int main(){
  481.  
  482. int vozbor=0;
  483. int vkupno=0;
  484. char c;
  485. FILE *vlezna;
  486. vlezna=fopen("zborovi.txt", "r");
  487. if(vlezna==NULL){
  488. printf("ima gresa");
  489. return -1;
  490. }
  491.  
  492. while((c=getc(vlezna))!=EOF){
  493.  
  494. if(vozbor){
  495. if(eBukva(c)){
  496. vozbor=1;
  497. }
  498. else{
  499. vozbor=0;
  500. vkupno++;
  501. }
  502. }
  503. else{ //ne sum vo zbor
  504. if(eBukva(c)){
  505. vozbor=1;
  506. }
  507. else{
  508. vozbor=0;
  509. }
  510. }
  511. }
  512.  
  513. printf("%d", vkupno);
  514.  
  515. fclose(vlezna);
  516.  
  517. return 0;
  518.  
  519. */
  520.  
  521. /*
  522. na mestata od glavnata dijagonala zapisi go maksimumot od soodvetniot red
  523.  
  524. for(i=0;i<n;i++){
  525. max=mat[i][0];
  526. jMax=0;
  527. for(j=0;j<n;j++){
  528. if(mat[i][j] > max){
  529. max = mat[i][j];
  530. jMax = j;
  531. }
  532. }
  533.  
  534. temp=mat[i][i];
  535. mat[i][i]=max;
  536. mat[i][jMax]=temp;
  537. }
  538.  
  539.  
  540. sekoj clen zameni go so zbirot od sosednite
  541.  
  542. for(i=0;i<n;i++){
  543.  
  544. for(j=0;j<n;j++){
  545. zbir=0;
  546. if(j+1>=0 && j+1<n){
  547. zbir+=mat[i][j+1];
  548. }
  549.  
  550. if(j-1>=0 && j-1<n){
  551. zbir+=mat[i][j-1];
  552. }
  553.  
  554. if(i+1>=0 && i+1<n){
  555. zbir+=mat[i+1][j];
  556. }
  557.  
  558. if(i-1>=0 && i-1<n){
  559. zbir+=mat[i-1][j];
  560. }
  561.  
  562. nova[i][j]=zbir;
  563. }
  564. }
  565.  
  566. na mestata od glavnata dijagonala zapisi go zbirot na drugite elementi od taa redica, a
  567. na mestata od sporednata dijagonala zapisi go zbirot na drugite elementi od taa kolona
  568.  
  569. int const n=4;
  570.  
  571. int mat [n][n];
  572. int nova[n][n];
  573. int i,j,zbir=0, max, temp, jMax,br=0;
  574. for(i=0; i<n; i++){
  575. for(j=0;j<n;j++){
  576. mat[i][j]= rand() % 11;
  577. }
  578. }
  579.  
  580. for(i=0; i<n; i++){
  581. for(j=0;j<n;j++){
  582. printf("%2d ", mat[i][j]);
  583. }
  584. printf("\n");
  585. }
  586.  
  587.  
  588.  
  589. for(i=0;i<n;i++){
  590. zbir=0;
  591. for(j=0;j<n;j++){
  592. zbir+=mat[i][j];
  593. }
  594. nova[i][i]=zbir-mat[i][i];
  595. }
  596.  
  597.  
  598. for(j=0;j<n;j++){
  599. zbir=0;
  600. for(i=0;i<n;i++){
  601. zbir+=mat[i][j];
  602. }
  603. nova[n-1-j][j]=zbir-mat[n-1-j][j];
  604. }
  605.  
  606. printf("\n");
  607.  
  608. for(i=0;i<n;i++){
  609. for(j=0;j<n;j++){
  610. if(i==j || i+j==n-1){
  611. mat[i][j]=nova[i][j];
  612. }
  613. }
  614. }
  615.  
  616. printf("\n");
  617.  
  618. for(i=0; i<n; i++){
  619. for(j=0;j<n;j++){
  620. printf("%2d ", mat[i][j]);
  621. }
  622. printf("\n");
  623. }
  624. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement