This is an old revision of the document!
~~NOTRANS~~
Laboratorium: klik
#include <stdio.h> #include <stdlib.h> #define N 5 #define M 8 int main() { int tab[N][M]; int suma = 0; int i, j; /* Zainicjalizuj tablicę */ for(i = 0; i < N; i++) { for (j = 0; j < M; j++) { tab[i][j] = i + 2*j; } } /* Oblicz sumę elementów */ for(i = 0; i < N; i+=2) { for (j = 0; j < M; j++) { suma += tab[i][j]; } } printf("Suma wynosi %d\n", suma); return 0; }
#include <stdio.h> #include <stdlib.h> #define N 3 #define M 4 int main() { int tab[N][M]; int suma = 0; int i, j; for(i = 0; i < N; i++) { for (j = 0; j < M; j++) { tab[i][j] = rand() % 10; } } /* Wyświetlanie tablicy 2D: - wiersz po wierszu - po kolei elementy w ramach danego wiersza - znak nowej linii po wyświetleniu każdego wiersza */ for(i = 0; i < N; i++) { for (j = 0; j < M; j++) { printf("%d ", tab[i][j]); } printf("\n"); } printf("\n"); /* Obliczanie sumy w wierszach */ for(i = 0; i < N; i++) { suma = 0; for (j = 0; j < M; j++) { suma += tab[i][j]; } printf("Suma w wierszu #%d: %d\n", i, suma); } printf("\n"); /* Obliczanie sumy w kolumnach */ for(j = 0; j < M; j++) { suma = 0; for (i = 0; i < N; i++) { suma += tab[i][j]; } printf("Suma w kolumnie #%d: %d\n", j, suma); } return 0; }
W poniższym rozwiązaniu porównujemy paramy litery: pierwszą z ostatnią, drugą z przedostatnią itd.
Zgodnie z definicją wyraz uznamy za palindrom jeśli wszystkie pary liter są zgodne bądź – równoważnie – jeśli nie zawiera ani jednej pary różniących się od siebie liter. (W naszym przypadku prościej sprawdzić ilość różnych par.)
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char str[] = "kajak"; int rozne_pary = 0; int i; for (i = 0; i < strlen(str)/2; i++) { if (str[i] != str[strlen(str) - 1 - i]) { rozne_pary++; } } if (rozne_pary == 0) { printf("Wyraz \"%s\" jest palindromem.\n", str); } else { printf("Wyraz \"%s\" nie jest palindromem.\n", str); } return 0; }