int main(void){ loodsensysteem * loods3 = maak_loodsensysteem(); int stop =0; printf("Welkom bij ons verbouwde theebedrijf. Geef opdrachten:\n"); while (stop != 1){ char invoer[50], * opdracht, * etiket; printf(">"); fgets(invoer, sizeof invoer -1, stdin); opdracht = strtok(invoer, " "); if (strcmp(opdracht, "opslaan1") == 0){ etiket = strtok(NULL, "\n"); printf("%s wordt opgeslagen in loods 1.\n", etiket); opslaan((*loods3).l1, etiket); } else if (strcmp(opdracht, "opslaan2") == 0){ etiket = strtok(NULL, "\n"); printf("%s wordt opgeslagen in loods 2.\n", etiket); opslaan((*loods3).l2, etiket); } else if (strcmp(opdracht, "leveren1\n") == 0){ if (leeg((*loods3).l1) != 1) printf("%s wordt geleverd uit loods 1.\n", leveren((*loods3).l1)); else printf("Er is geen thee in voorraad in loods 1.\n"); } else if (strcmp(opdracht, "leveren2\n") == 0){ if (leeg((*loods3).l2) != 1) printf("%s wordt geleverd uit loods 2.\n", leveren((*loods3).l2)); else printf("Er is geen thee in voorraad in loods 2.\n"); } else if (strcmp(opdracht, "verplaatsen12\n") == 0){ etiket = leveren((*loods3).l1); printf("%s wordt verplaatst van loods 1 naar loods 2.\n", etiket); opslaan((*loods3).l2, etiket); } else if (strcmp(opdracht, "stop\n") == 0){ printf("Tot ziens.\n"); sloop_loods(loods3); stop = 1; } else printf("Opdracht niet begrepen, probeer het opnieuw...\n"); } return 0; }
char * verplaatsen21(loods1_t * loods2, loods1_t * loods1) { char * temp; if(isleeg(loods2)) { printf("Loods2 is Empty"); return NULL; } if(isvol(loods1)) { printf("Loods1 is Full"); return NULL; } temp = leveren(loods2); opslaan(loods1, temp); return temp; }
int main (int argc, char **argv) { struct loods1 *storage; char *line, *token, *search, *leverenResult; line = malloc( 50 * sizeof(char) ); storage = maakLoods(); printf("\nWelkom bij ons theebedrijf. Geef opdrachten:\n\n"); // Start console. while(1) { line = getOperation(line); search = " "; token = strtok(line, search); // If token is null no searchresults are found and the command is not // recognized. if(token == NULL) { printf("Commando niet herkent...\n"); printf("Voor lijst met commando's typ help.\n"); } // If token is help print a list of commands. else if(!strcmp(token, "help")) { printCommands(); } // If token is leveren deliver the tea from the storage. else if(!strcmp(token, "leveren")) { leverenResult = leveren(storage); // After leveren result is retrieved check if it is not NULL print // the result, else there is no more tea in stock. if(leverenResult != NULL) { printf("%s wordt geleverd.\n", leverenResult); } else { printf("Er is geen thee meer in voorraad.\n"); } free(leverenResult); } // If token is opslaan store tea in the storage. else if(!strcmp(token, "opslaan")) { // Search for the end of line for what to store. search = "\n"; token = strtok(NULL, search); // if nothing is found return to user to give something to store. if(token == NULL) { printf("Niks om op te slaan meegegeven.\n"); } // else store the content. else { opslaan(storage, token); printf("%s wordt opgeslagen.\n", token); } } // break the loop when the stop command is given. else if(!strcmp(token, "stop")) { break; } // Else the command is not recognized. else { printf("Commando niet herkent...\n"); printf("Voor lijst met commando's typ help.\n"); } free(line); } // after the loop free the memory. sloopLoods(storage); return 0; }
int main (int argc, char **argv) { struct loods3 *storage1, *storage2; char *line, *token, *search, *leverenResult; storage1 = maakLoods(); storage2 = maakLoods(); printf("\nWelkom bij ons theebedrijf. Geef opdrachten:\n\n"); while(1) { line = getOperation(line); search = " "; token = strtok(line, search); if(token == NULL) { printf("Commando niet herkent...\n"); printf("Voor lijst met commando's typ help.\n"); } else if(!strcmp(token, "help")) { printCommands(); } else if(!strcmp(token, "leveren")) { if(leeg(storage2) && !leeg(storage1)) { while(1) { leverenResult = leveren(storage1); if(leverenResult != NULL) { printf("%s wordt verplaatst van loods 1 naar loods 2.\n", leverenResult); opslaan(storage2, leverenResult); } else { break; } } } leverenResult = leveren(storage2); if(leverenResult != NULL) { printf("%s wordt geleverd uit loods 2.\n", leverenResult); } else { printf("Er is geen thee meer in voorraad.\n"); } } else if(!strcmp(token, "opslaan")) { search = "\n"; token = strtok(NULL, search); if(token == NULL) { printf("Niks om op te slaan meegegeven.\n"); } else { opslaan(storage1, token); printf("%s wordt opgeslagen in loods 1.\n", token); } } else if(!strcmp(token, "stop")) { break; } else { printf("Commando niet herkent...\n"); printf("Voor lijst met commando's typ help.\n"); } free(line); } free(line); sloopLoods(storage1); sloopLoods(storage2); return 0; }
int main(void) { system("clear"); printf("Welcome to C-Industries Tea Company\n\nShell: (type 'help' for help)\n"); int exit = 0, i,j; loods1_t * loods1; loods1_t * loods2; loods1 = maak_loods(); loods2 = maak_loods(); do{ char buffer[BUFFERSIZE]; char input[BUFFERSIZE]; printf("> "); if(fgets(buffer, sizeof(buffer), stdin) != NULL) { if (strncmp (buffer,"exit",3) == 0) { printf("Now exiting\n"); sloop_loods(loods1, loods2); exit = 1; } else if (strncmp (buffer,"leveren",6) == 0) { char * data = leveren(loods1); if(data == NULL) { printf("The Queue is empty\n"); } else { printf("%s", data); } } else if (strncmp (buffer,"opslaan",7) == 0) { /* Clear char input */ for(i = 0; i < BUFFERSIZE; i++) { input[i] = ' '; } /* Copy buffer to input */ for(j = 0; buffer[j] != '\0'; j++) { input[j] = buffer[j+8]; } /* Save to Loods */ if(verplaatsen12(loods1, loods2) != NULL) { verplaatsen12(loods1, loods2); } opslaan(loods1, input); if(verplaatsen21(loods2, loods1) != NULL) { verplaatsen21(loods2, loods1); } } else if (strncmp (buffer,"help",3) == 0) { printf("Commandos:\n\tlist\t\t\tgeeft de status van de stack weer\n\topslaan <string>\tSaves the entered string\n\tleveren\t\t\tPrint the top item of the Stack\n\texit\t\t\tExit the Program\n"); } else if (strncmp (buffer,"list",3) == 0) { printf("> Listing the Queue: (loods1)\n"); printf("\tloods1 -> size: %d\n\tloods1 -> front: %d\n", loods1 -> size, loods1 -> front); printf("> Listing the Queue: (loods2)\n"); printf("\tloods2 -> size: %d\n\tloods2 -> front: %d\n", loods2 -> size, loods2 -> front); } else { printf("Command not recognized\n"); } } } while(exit != 1); return 0; }