Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.77 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. int n = 20;
  5.  
  6. void output(unsigned long int* year, unsigned int* day, double* wind_t, unsigned int* rain){
  7. int i = 0;
  8. printf(" ------ ----------------- -------------\n");
  9. printf("| year | day | wind | temperature |\n");
  10. for (i = 0; i < 20; i++){
  11. printf("|------+-----+--------+-------------|\n");
  12. printf("| %ld | %d | %f | %d |\n", year[i], day[i], wind_t[i], rain[i]);
  13. }
  14. }
  15.  
  16. void input(unsigned long int* year, unsigned int* day, double* wind_t, unsigned int* rain){
  17. int i = 0;
  18. long int year_;
  19. int day_;
  20. double wind_t_;
  21. int rain_;
  22. for (i = 0; i < n; i++){
  23. printf("Input a year\n");
  24. while(scanf("%ld", &year_) != 1 || year_ < 1){
  25. printf("Error. Try again\n");
  26. while(getchar()!='\n');
  27. }
  28. printf("Input a day\n");
  29. while(scanf("%d", &day_) != 1 || day_ < 1 || day_ > 365){
  30. printf("Error.Try again\n");
  31. while(getchar()!='\n');
  32. }
  33. printf("Input a wind temperature\n");
  34. while(scanf("%lf", &wind_t_) != 1){
  35. printf("Error. Try again\n");
  36. while(getchar()!='\n');
  37. }
  38. printf("Input a count of precipitation\n");
  39. while(scanf("%d", &rain_) != 1 || rain_ < 0){
  40. printf("Error. Try again");
  41. while(getchar()!='\n');
  42. }
  43. year[i] = year_;
  44. day[i] = day_;
  45. wind_t[i] = wind_t_;
  46. rain[i] = rain_;
  47. }
  48. menu(year, day, wind_t,rain);
  49. }
  50.  
  51. void exercise_1(unsigned long int* year,unsigned int* day,double* wind_t,unsigned int* rain){
  52. int i; long unsigned int min_id; unsigned int min = 100000000;
  53. for (i = 0; i < 20; i++){
  54. if (rain[i] < min){
  55. min_id = i;
  56. min = rain[i];
  57. }
  58. }
  59. printf("%ldu\n", year[min_id]);
  60. menu(year, day, wind_t, rain);
  61. }
  62.  
  63. void exercise_2(unsigned long int* year,unsigned int* day,double* wind_t,unsigned int* rain){
  64. int i, count = 0; unsigned int year_; double control_number;
  65. printf("Enter year and control number:\n");
  66. scanf("%d %lf\n", &year_, &control_number);
  67. for (i = 0; i < 20; i++){
  68. if (year_ == year[i]){
  69. if (wind_t[i] > control_number * 2)
  70. count++;
  71. }
  72. }
  73. printf("%d\n", count);
  74. menu(year, day, wind_t, rain);
  75. }
  76.  
  77. void exercise_3(unsigned long int* year,unsigned int* day,double* wind_t,unsigned int* rain){
  78. int i, count_of_days = 0, summ_of_rain = 0; unsigned int year_; double average_rain;
  79. printf("Enter a year:\n");
  80. scanf("%du", &year_);
  81. for (i = 0; i < 20; i++){
  82. if (year[i] == year_){
  83. summ_of_rain += rain[i];
  84. count_of_days++;
  85. }
  86. }
  87. average_rain = summ_of_rain / count_of_days;
  88. printf("%f\n", average_rain);
  89. menu(year, day, wind_t, rain);
  90. }
  91.  
  92. int exit_(){
  93. return 0;
  94. }
  95.  
  96. int menu(unsigned long int* year,unsigned int* day,double* wind_t,unsigned int* rain){
  97. int i = 0;
  98. printf("Choose your variant\n1. I want to input data\n2. I want to output all data\n3. I want to exit\n");
  99. while ((scanf("%i", &i) != 1 || i < 1 || i > 3)){
  100. printf("Error. Try again\n");
  101. while (getchar() !='\n');
  102. }
  103. if (i < 1 || i > 3)
  104. printf("You inputed incorrect number");
  105. else{
  106. if(i == 1){
  107. input(year,day,wind_t,rain);
  108. }
  109. else if(i == 2){
  110. output(year,day,wind_t,rain);
  111. }
  112. else if(i == 3){
  113. exit_();
  114. }
  115. }
  116. return 0;
  117. }
  118.  
  119. int main()
  120. {
  121. unsigned long int year[n];
  122. unsigned int day[n];
  123. double wind_t[n];
  124. unsigned int rain[n];
  125. menu(year, day, wind_t,rain );
  126. return 0;
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement