Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Vo istata papka vo koja vi e zacuvan .c fajlot od programava, pravite datoteka.txt fajl vo koj pisuvate niza znaci (preporaclivo e da imate barem eden zbor-palindrom za moze da se vidi deka raboti programata (kolku tolku)
- #include<stdio.h>
- #include<ctype.h>
- #include<string.h>
- int palindrom(char *s){
- int j,i;
- for(j=0,i=strlen(s)-1;i>=0;j++,i--){
- if (*(s+i)!=*(s+j))
- return 0;
- }
- return 1;
- }
- int main(){
- FILE *ptr,*ptr2;
- char c,s[100];
- int i=0;
- ptr=ptr2=fopen("datoteka.txt", "r");
- //proverka na citanje
- while(1){
- if((c =fgetc(ptr))==EOF)
- break;
- putchar(c);
- }
- puts(ptr);
- //neznam zasto, ama programava ne raboti ako ovie 2 reda stojat pred while-ot
- if((ptr=fopen("datoteka.txt","r"))==NULL){puts("Ne moze da se otvori datotekata");
- return -1;}
- //ova e kodot xD
- while((c=fgetc(ptr))!=EOF){
- if(isalpha(c)){
- s[i]=c;
- i++;
- } else {
- s[i]='\0';
- if(i>1&&palindrom(s)){
- puts(s);
- printf("%s e palindrom\n",s);
- }
- i=0;
- }
- }
- fclose(ptr);
- return 0;
- }
- ZADACA 1*********************************************************************************
- #include<stdio.h>
- #include<string.h>
- #define MAX 100
- int del(char *s1, char *s2)
- {
- int i, j, p;
- int d1 = strlen(s1);
- int d2 = strlen(s2);
- for (i = 0; i < d2 - d1+1; i++)
- if (strncmp(s1, s2 + i, d1) == 0)
- p=i;
- for(j=p+d1; j<=d2; j++)
- {
- s2[p]=s2[j];
- p++;
- }
- s2[p]='\0';
- }
- int main()
- {
- char str[MAX], rmv[MAX];
- int a;
- printf("Vnesi tekst: ");
- gets(str);
- printf("Vnesi go tekstot koj sakas da se izbrise: ");
- gets(rmv);
- if(strlen(rmv)>strlen(str))
- printf("Nevalidna operacija!\n");
- else
- {
- del(rmv, str);
- printf("%s", str);
- }
- return 0;
- }
- ZADACA 2*********************************************************************************
- #include<stdio.h>
- #include<string.h>
- #define MAX 100
- int del(char *s1, int s)
- {
- int i;
- int d1 = strlen(s1);
- for(i=s; i<d1; i++)
- s1[i]=s1[i+1];
- s1[i]='\0';
- }
- int isAnagram(char *s1, char *s2)
- {
- int i, j;
- int d1=strlen(s1);
- int d2=strlen(s2);
- for(i=0; i<d2; i++)
- for(j=0; j<d1; j++)
- {
- if(s1[j]==' ') continue;
- if(s2[i]==s1[j])
- {
- del(s1, j);
- d1--;
- break;
- }
- }
- if((s1[0]=='\0') || (s1[0]==' ')) return 1;
- else return 0;
- }
- int main ()
- {
- char str1[MAX], str2[MAX];
- printf("Vnesi go prvot tekst: ");
- gets(str1);
- printf("Vnesi go vtoriot tekst: ");
- gets(str2);
- if(isAnagram(str1,str2)) printf("Stringovite se anagrami!\n");
- else printf("Stringovite ne se anagrami!\n");
- return 0;
- }
- ///////////////////////////////////////////////////////////////////////
- --------->1<---------------
- #include<stdio.h>
- #include<stdlib.h>
- #define max 10
- void delete1(char *string,char *znak)
- {
- int brojac=0;
- while(*string!='\0')
- {
- if(*string==*znak)
- {
- *string=*string-*znak;
- }
- *string++;
- }
- return *string;
- }
- int main ()
- {
- char string[max],znak,znaK[max];
- printf("Vnesete nekakva niza na znaci:");
- gets(string);
- printf("Vnesete koj znak da go oterame vo pm:");
- gets(znaK);
- delete1(string,znaK);
- printf("%s",string);
- return 0;
- }
- ---------->2<--------------
- #include<stdio.h>
- #include<stdlib.h>
- void isAnagram(char *str, char *str2)
- {
- int i,j,m=0;
- for (i = 0; str[i] != '\0'; i++)
- {
- for(j=0;str2[j]!='\0';j++)
- {
- if(*str==*str2)
- m=1;
- }
- }
- if(m=1)
- {
- printf("%s",str2);
- }
- }
- int main ()
- {
- char a[100],b[100];
- printf("Vnesi string:");
- gets(a);
- printf("E sea vnesi string za da viish dali e anagram:");
- gets(b);
- isAnagram(a,b);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement