Advertisement
Guest User

help me

a guest
Dec 2nd, 2024
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.42 KB | Help | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. void clear(){
  6.     int c;
  7.     while(((c = getchar()) != '\n') && c != EOF);
  8. }
  9.  
  10. int main() {
  11.     int size;
  12.     char buffer[100];
  13.  
  14.     char input[10];
  15.     if (fgets(input, sizeof(input), stdin) != NULL) {
  16.         char *end;
  17.         long temp = strtol(input, &end, 10);
  18.         if (*end != '\n' && *end != '\0' || temp <= 0 || temp > 1024 * 1024 * 10 / sizeof(int)) {
  19.             snprintf(buffer, sizeof(buffer), "wrong size\n");
  20.             fprintf(stderr, "%s", buffer);
  21.             return 1;
  22.         }
  23.         size = (int) temp;
  24.     } else {
  25.         fprintf(stderr, "Input error\n");
  26.         return 1;
  27.     }
  28.  
  29.     int *arr = (int *)malloc(size * sizeof(int));
  30.     if (arr == NULL) {
  31.         snprintf(buffer, sizeof(buffer), "Memory allocation error\n");
  32.         fprintf(stderr, "%s", buffer);
  33.         return 1;
  34.     }
  35.  
  36.     for (size_t i = 0; i < size; i++) {
  37.         if (scanf("%d", &(arr[i])) != 1) {
  38.             snprintf(buffer, sizeof(buffer), "Invalid input\n");
  39.             fprintf(stderr, "%s", buffer);
  40.             clear();
  41.             free(arr);
  42.             return 1;
  43.         }
  44.     }
  45.     //code here
  46.     for(size_t i = 0; i < size; i++){
  47.         if((arr[i] % 2 == 0) && (i % 2 == 0)){
  48.             fprintf(stdout, "%d", arr[i]);
  49.         }
  50.     }
  51.    
  52.     memset(arr, 0, size * sizeof(int));
  53.     free(arr);
  54.     arr = NULL;
  55.  
  56.     return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement