Kod: |
#include <stdio.h>
#include <stdlib.h> int pot(int x, int y) { int i, prod=1; for (i=0; i<y; i++) prod*=x; return prod; } int sum(int k, int n) { int i, suma=0; for (i=0; i<k; i++) suma+=n*pot(10,i); return suma; } int main(void) { int k, i, n, suma=0; scanf ("%d", &k); for (i=0; i<k; i++) { scanf ("%d", &n); suma+=sum(k,n)+n; } printf ("%d", suma); return 0; } |
Kod: |
function rek(input, n, subset=[], m=0):
if n == 0: napravi nesto s podskupom i izadji iz rekurzije n-- # Rekurzija za podskupove koji ne sadrzavaju zadnji element input-a rek(input, n, subset, m) # Rekurzija za podskupove koji sadrzavaju zadnji element input-a rek(input, n, subset + [input[n]], m+1) |
krilo (napisa): |
ovo kad staviš rek(input, n, subset=[], m=0) pri pravljenju funkcije, što je točno subset=[] u svemu tome? Nepoznato mi je stavljanje znaka jednakosti u deklaraciju funkcije. |
vsego (napisa): |
Inicijalne vrijednosti subset-a i m opisuju prazni skup (ali u ANSI C-u ih ne smijes ovako navesti, no to je sitna tehnikalija). |
Citat: |
Koja je uloga ovih zagrada oko input[n] u subset + [input[n]]? Molim te, elaboriraj ako ti nije problem. Je li to baš postupak premještanja članova iz niza u niz ili nešto drugo? |
vsego (napisa): |
Podskup u koji dodajemo input[n] ima element vise, sto znaci da ga treba ubaciti u niz subset koji sadrzi elemente podskupa (pseudo-zapisano kao subset + [input[n]] i povecati mu duljinu (m+1). |
krilo (napisa): |
ovo kad staviš rek(input, n, subset=[], m=0) pri pravljenju funkcije, što je točno subset=[] u svemu tome? Nepoznato mi je stavljanje znaka jednakosti u deklaraciju funkcije. |
krilo (napisa): |
Koja je uloga ovih zagrada oko input[n] u subset + [input[n]]? Molim te, elaboriraj ako ti nije problem. Je li to baš postupak premještanja članova iz niza u niz ili nešto drugo? |
Kod: |
void okreni_i_nalijepi(char *string, int i, int t)
{ char *tstring; int j; tstring=(char*)malloc(sizeof(char)*(i-t+1)); for (j=0; j<i-t+1; j++) tstring[j]=string[t+j]; okreni(tstring); int k=0; for (j=t; tstring[k]!='\0'; j++) {string[j]=tstring[k++];} free(tstring); return; } |
Kod: |
void okreni(char *s)
{ int k=0, p, i; char *t; t=s; p=strlen(s)-1; t=(char*)malloc(sizeof(char)*(p+1)); for (i=0; i<p+1; i++) *(t+i)=*(s+i); int r=p+1; while (r--) {s[k++]=t[p--];} free(t); } |
Kod: |
void okreni_i_nalijepi(char *string, int i, int t) {
while (t < i) { char tmp = string[i]; string[i] = string[t]; string[t] = tmp; t = t + 1; i = i - 1; } } |
Kod: |
#include <stdio.h>
#include <string.h> #include <stdlib.h> #include <ctype.h> int prebroji(char *s) { int brojac=0; while (*s!='\0') {if (*s=='u') if (*(s+1)=='z') brojac++; s++;} return brojac; } int main(void) { char *string; string=(char*)malloc(sizeof(char)*13468); gets(string); printf ("%d\n", prebroji(string)); free(string); return 0; } |
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.