Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 1. Цифри и букви
- Да се напише програма која од датотеката со име "text.txt" ќе ги одреди и отпечати на стандарден излез односот на цифри и букви. Забелешка: Да не се менува функцијата writeToFile(). Таа служи за креирање и пополнување на влезната датотека со податоците дадени на стандардниот влез.
- Sample input:
- t is preferable to avoid 4134sav54543253ing empty li432432434nes on the history list, since users rarely have a burning need to reuse a blan7777k line. Here is a 23 function which 3 usefully repla98343242ces the 42134 4354678789876978standard gets() library function, and has the advantage of no static buffer to overflow#
- Sample output:
- 0.27
- -------------------------------------------------
- #include <stdio.h>
- void writeToFile()
- {
- FILE* f = fopen("text.txt", "w");
- char c;
- while((c = getchar()) != '#')
- {
- fputc(c, f);
- }
- fclose(f);
- }
- int main()
- {
- writeToFile();
- FILE* file = fopen("text.txt", "r");
- int cifri = 0, bukvi = 0;
- char c;
- while((c = fgetc(file)) != EOF)
- {
- if (isalpha(c)) bukvi++;
- else if (isdigit(c)) cifri++;
- }
- fclose(file);
- float odnos = (float)cifri / (float)bukvi;
- printf("%.2f", odnos);
- return 0;
- }
- -------------------------------------------------
- 2. Збир на редици на матрица
- Да се напише програма која ќе ги прочита елементите на една матрица сместени во текстуална датотека „matrica.txt“. Во првиот ред на датотеката се запишани бројот на редици и колони на матрицата, а потоа се запишани елементите на матрицата. Потребно е за секоја редица да го пресметате збирот на елементите и во текстуалната датотека „izlez.txt“ да се испечатат само оние збирови по редици коишто се поголеми од 10. Забелешка: Да не се менуваат дадените функции writeToFile() printFile(). Тие служат за креирање и проверка на потребните датотеки.
- Sample input:
- 5 5
- 8 2 8 0 7
- 1 3 -1 3 8
- 2 3 5 8 1
- 7 0 -1 1 0
- 0 8 0 1 2
- #
- Sample output:
- 25
- 14
- 19
- 11
- -------------------------------------------------
- #include <stdio.h>
- void writeToFile() {
- FILE *f = fopen("matrica.txt", "w");
- char c;
- while((c = getchar()) != '#') {
- fputc(c, f);
- }
- fclose(f);
- }
- void printFile() {
- FILE *f=fopen("izlez.txt","r");
- char line[100];
- while(!feof(f)){
- fgets(line,100,f);
- if (feof(f))
- break;
- printf("%s",line);
- }
- fclose(f);
- }
- int main()
- {
- writeToFile();
- FILE *f1,*f;
- char c;
- int m,n,a[100][100],i,j,suma=0;
- if((f1 = fopen("matrica.txt","r")) == NULL)
- {
- printf ("Datotekata nemoze da se otvori");
- return -1;
- }
- fscanf(f1, "%d %d", &m, &n);
- for(i = 0; i < m && !feof(f1); i++)
- {
- for(j = 0; j < n && !feof(f1); j++)
- {
- fscanf (f1, "%d", &a[i][j]);
- }
- }
- fclose(f1);
- f = fopen("izlez.txt", "w");
- for(i = 0; i < m && !feof(f1); i++)
- {
- for(j = 0; j < n && !feof(f1); j++)
- {
- suma = suma + a[i][j];
- }
- if(suma > 10) printf("%d\n",suma);
- suma = 0;
- }
- fclose(f);
- printFile();
- return 0;
- }
- -------------------------------------------------
- 3. Зборови палиндроми
- Да се направи програма која од влезната датотека „text.txt“ ќе ги одреди и отпечати сите зборови палиндроми во излезната датотека „print.txt“. Да се избегнуваат интерпукциските знаци точка (.) и запирка (,) и да не се прави разлика меѓу големи и мали букви. Забелешка: Да не се менуваат дадените функции writeToFile() printFile(). Тие служат за креирање и проверка на потребните датотеки.
- Sample input:
- Ana vozi kajak, a Ema trotinet. I potoa im se prikluci Marko.#
- Sample output:
- Ana
- kajak
- a
- I
- -------------------------------------------------
- #include <stdio.h>
- void writeToFile() {
- FILE *f = fopen("text.txt", "w");
- char c;
- while((c = getchar()) != '#') {
- fputc(c, f);
- }
- fclose(f);
- }
- void printFile() {
- FILE *f=fopen("print.txt","r");
- char line[100];
- while(!feof(f)){
- fgets(line,100,f);
- if (feof(f))
- break;
- printf("%s",line);
- }
- fclose(f);
- }
- int palindrom (char niza[])
- {
- int a = strlen(niza), i, j = a;
- if(!isalpha(niza[a-1])) a -= 1;
- for(i = 0; i < a/2; i++)
- {
- if (tolower(niza[i]) != tolower(niza[a-i-1]))
- return 0;
- }
- return 1;
- }
- int main()
- {
- writeToFile();
- FILE *f1;
- char niza[100];
- if ((f1 = fopen("text.txt", "r")) == NULL)
- {
- printf ("Datotekata nemoze da se otvori");
- return -1;
- }
- while(!feof(f1))
- {
- fscanf(f1,"%s",niza);
- if(palindrom(niza))
- if(!isalpha(niza[strlen(niza)-1]))
- printf("%.*s\n", (int)strlen(niza)-1, niza);
- else printf("%s\n",niza);
- }
- fclose(f1);
- return 0;
- }
- -------------------------------------------------
- 4. Позиција на ред
- Да се напише програма која од дадена датотека text.txt ќе ја испечати позицијата на редот кој содржи најголем број на големи букви. Максималната должина на еден ред е 80 знаци. Доколку има повеќе редови со ист максимален број на големи букви, треба да се испечати позицијата на првиот од нив. Забелешка: Да не се менува функцијата writeToFile(). Таа служи за креирање и пополнување на влезната датотека со податоците дадени на стандардниот влез.
- Sample input:
- Chuck Norris doesn't read books.
- He stares them down until he gets
- the information he wants.#
- Sample output:
- 1
- -------------------------------------------------
- #include <stdio.h>
- void writeToFile() {
- FILE *f = fopen("text.txt", "w");
- char c;
- while((c = getchar()) != '#') {
- fputc(c, f);
- }
- fclose(f);
- }
- int main()
- {
- writeToFile();
- FILE *f1;
- char c;
- char niza[100];
- if ((f1 = fopen("text.txt", "r")) == NULL)
- {
- printf ("Datotekata nemoze da se otvori");
- return -1;
- }
- int maxGolemi = 0, red = 1, brGolemi = 0
- , redMaxGolemi;
- while((c = fgetc(f1)))
- {
- if (c != '\n' && c != EOF)
- {
- if (isupper(c))
- {
- brGolemi++;
- }
- }
- else
- {
- if (brGolemi > maxGolemi)
- {
- maxGolemi = brGolemi;
- redMaxGolemi = red;
- }
- brGolemi = 0;
- red++;
- }
- if (c == EOF) break;
- }
- fclose(f1);
- printf("%d", redMaxGolemi);
- return 0;
- }
- -------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement