Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main()
- {
- int sirka, vyska;
- // Kontrola vstupu
- if (scanf("%d%d", &sirka, &vyska) != 2) { // klasicka kontrola vstupu int
- fprintf(stderr, "Error: Chybny vstup!\n");
- return 100;
- }
- if ((sirka > 63 || sirka < 3) || (vyska > 63 || vyska < 3)) { // kontrola intervalu
- fprintf(stderr, "Error: Vstup mimo interval!\n");
- return 101;
- }
- if (sirka % 2 != 1) { // Sirka vzdy licha
- fprintf(stderr, "Error: Sirka neni liche cislo!\n");
- return 102;
- }
- // 2 casti: strecha + domecek bez strechy
- // Strecha
- int k = (sirka / 2); // Pomocna promenna pro vypocet mezer mezi zacatkem radku a prvnim x-kem
- int n = 1; // Pomocna promenna pro vypocet mezer mezi x-kama
- for (int i = 0; i < (sirka / 2) ; i++) {
- if (i == 0) { // Prvni radek je vzdy spicka - jedno x
- for (int j = 0; j < (sirka / 2); j++) {
- printf(" ");
- }
- printf("X\n");
- }
- else {
- for (int m = k; m > 0; m--) {
- printf(" ");
- }
- printf("X");
- for (int l = 0; l < n ; l++) {
- printf(" ");
- }
- printf("X\n");
- n = n + 2; // Vypocet mezer mezi prvnim a druhym x-kem (pouze v pripade 2x = vynechano pro spicku domecku)
- }
- k--; // Vypocet meze mezi zacatkem radku a prvnim x-kem
- }
- // Domecek bez strechy
- for (int i = 0; i < vyska; i++) {
- if (i == 0) {
- for (int j = 0; j < sirka; j++) {
- printf("X");
- }
- printf("\n");
- }
- else if (i == vyska - 1) {
- for (int j = 0; j < sirka; j++) {
- printf("X");
- }
- printf("\n");
- }
- else {
- printf("X");
- for (int k = 0; k < sirka - 2; k++) {
- printf(" ");
- }
- printf("X\n");
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement