SHOW:
|
|
- or go back to the newest paste.
| 1 | #include <stdio.h> | |
| 2 | #include <stdlib.h> | |
| 3 | /* | |
| 4 | (25 pkt) Napisz funkcję, która dostaje jako parametr dynamiczną dwuwymiarową tablicę liczb | |
| 5 | całkowitych i jej wymiary n, m. Funkcja ma zwrócić 1, jeśli na brzegach (tzn. w pierwszym | |
| 6 | i ostatnim wierszu oraz w pierwszej i ostatniej kolumnie) tablicy występują wartości tylko | |
| 7 | niezerowe; w przeciwnym razie funkcja ma zwrócić 0. | |
| 8 | */ | |
| 9 | int funkcja(int **tab, int n, int m){
| |
| 10 | // mozemy zrobic 2 fory - jeden do sprawdzenia dwoch kolumn na brzegach, drugi do sprawdznia pierwszego i ostatniego wiersza | |
| 11 | int i; // to nam do fora potrzebne | |
| 12 | // tab[n][m] - n - wiersze m - kolumny | |
| 13 | for(i=0;i<n;i++){ // sprawdzamy pierwssza i ostatnia kolumne
| |
| 14 | if((tab[i][0] == 0) || (tab[i][m-1] == 0)){ // jesli pojawia sie jakas wartosc zerrowa
| |
| 15 | return 0; // zwracamy zero | |
| 16 | // break; // konczymy funkcje | |
| 17 | printf("%i", tab[i][i]);
| |
| 18 | } | |
| 19 | ||
| 20 | } | |
| 21 | for(i=0;i<m;i++){ // sprawdzamy pierwszy i ostatni wiersz
| |
| 22 | if((tab[0][i] == 0) || tab[n-1][i] == 0){ // dajemy n-1 bo nie ma elementu tab[3] bo tablica konczy sie na tab[2]
| |
| 23 | return 0; | |
| 24 | break; | |
| 25 | } | |
| 26 | ||
| 27 | } | |
| 28 | // Jesli funkcja nie została wczesniej przerwana, to znaczy ze na krawedziach nie ma wartosci zerowyc i mozemy zwrocic 0 | |
| 29 | return 1; | |
| 30 | } | |
| 31 | int main() | |
| 32 | {
| |
| 33 | int i; | |
| 34 | int **tab; | |
| 35 | tab=(int**)malloc(3*sizeof(int *)); | |
| 36 | for(i=0;i<3;i++) | |
| 37 | tab[i]=(int *)malloc(3*sizeof(int)); | |
| 38 | tab[0][0] = 1; | |
| 39 | tab[0][1] = 1; | |
| 40 | tab[0][2] = 1; | |
| 41 | tab[1][0] = 1; | |
| 42 | tab[1][1] = 0; | |
| 43 | tab[1][2] = 1; | |
| 44 | tab[2][0] = 1; | |
| 45 | tab[2][1] = 1; | |
| 46 | tab[2][2] = 1; | |
| 47 | printf("%i",funkcja(tab,3,3));
| |
| 48 | ||
| 49 | ||
| 50 | ||
| 51 | printf("Hello world!\n");
| |
| 52 | return 0; | |
| 53 | } |