#include #include #include #define MAX_DELKA 4500000 // Maximální délka Bible int main() { char *ovoce = malloc(4500000); // Alokace paměti pro text Bible if (ovoce == NULL) { // Pokud se nepodaří alokovat paměť, vypíšeme chybové hlášení printf("Nepodařilo se alokovat paměť pro bibli.\n"); return 0; } char *jablko = ovoce; // Pointer na začátek alokované paměti char znak; while ((znak = getchar()) != EOF) { // Načítání vstupu do paměti (Bible) *jablko = znak; // Uložení znaku do paměti jablko++; // Posun ukazatele na další pozici } *jablko = '\0'; // Konec textového řetězce jablko = ovoce; // Resetování ukazatele na začátek textu while (*jablko != '\0') { // Procházení textu, dokud není dosažen konec if (strstr(jablko, "God") != NULL) { // Hledání slova "God" v textu char *banan = strstr(jablko, "God"); // Pointer na začátek výskytu slova "God" char *pomeranc = strstr(jablko, "God"); // Pointer na začátek výskytu slova "God" jablko = strstr(jablko, "God"); // Posun ukazatele na začátek slova "God" jablko++; // Posun ukazatele na další pozici while (*banan != 10) // Posun pointeru zpět k začátku věty banan--; while (*pomeranc != '.') // Posun pointeru na konec věty pomeranc++; banan++; // Posun pointeru za tečku na začátek věty while (banan <= pomeranc) // Vypsání věty od začátku do konce printf("%c", *banan++); printf("\n\n"); } else { break; // Pokud nenajdeme slovo "God", skončíme } } free(ovoce); // Uvolnění paměti alokované pro text Bible return 0; }