Advertisement
Guest User

Hogolyo

a guest
Dec 13th, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4. #define NEVMAX 32
  5. #define SZAM 10
  6. #define MAXEMBER 3
  7.  
  8. int getYourLine(char s[], int lim);
  9. int nevell(char s[]);
  10. int szame(char s[]);
  11.  
  12. int main()
  13. {
  14. char nev[NEVMAX + 1];
  15. char szam[NEVMAX + 1];
  16. char maxdobo[NEVMAX + 1];
  17. char mindobo[NEVMAX + 1];
  18. int getL, nevok, szamok, szamint, kilep, maxember, maxdobas, mindobas, a;
  19.  
  20. nevok = szamok = kilep = maxdobas = mindobas = 0;
  21. maxember = 1;
  22.  
  23. printf("\t\t\t\tHogolyo\n\tA program eloszor a nevet keri be, majd a dobasi tavolsagot!\n\n");
  24.  
  25. do {
  26. do
  27. {
  28. printf("Adja meg a %d. nevet: ", maxember);
  29. getL = getYourLine(nev, NEVMAX + 1);
  30. if (!getL) { printf("Ures sor, kilepes\n"); kilep = 1; }
  31. else if (!nevell(nev)) printf("Helytelen formatum, helyes (Peter)!\n");
  32. else {
  33. nevok++;
  34. }
  35. } while (!kilep && !nevok);
  36.  
  37. if (!kilep) {
  38. do
  39. {
  40. printf("Adja meg a dobasi tavolsagot: ");
  41. getL = getYourLine(szam, SZAM + 1);
  42. if (!getL) printf("Ures sor, ujat\n");
  43. else if (!szame(szam)) printf("Nem szamot adott meg\n");
  44. else {
  45. a = atoi(szam);
  46. if (a > maxdobas) {
  47. maxdobas = a;
  48. strcpy(maxdobo, nev);
  49. }
  50. if (maxember == 1 ){
  51. mindobas = a;
  52. }
  53. else if(a < mindobas) {
  54. mindobas = a;
  55. strcpy(mindobo, nev);
  56. }
  57. szamok++;
  58. maxember++;
  59. }
  60. } while (!szamok);
  61. }
  62. } while (!kilep && maxember <= MAXEMBER);
  63.  
  64. if (nevok && szamok) {
  65. printf("Legnagyobatt dobo neve: %s\n", maxdobo);
  66. printf("Dobasa: %d\n", maxdobas);
  67. printf("Legkisebbet dobo neve: %s\n", mindobo);
  68. printf("Dobasa: %d\n", mindobas);
  69. }
  70.  
  71. return 0;
  72. }
  73.  
  74. int getYourLine(char s[], int lim)
  75. {
  76. int c, i;
  77. for (i = 0; i < lim && (c = getchar()) != EOF && c != '\n'; ++i) s[i] = c;
  78. s[i] = '\0';
  79. while (c != EOF && c != '\n') c = getchar();
  80. return i;
  81. }
  82.  
  83. int nevell(char s[])
  84. {
  85. int i;
  86. if (s[0] < 'A' || s[0] > 'Z') return 0; // Nem nagybetű az első karakter
  87. for (i = 1; s[i] != '\0'; i++) {
  88. if (s[i] < 'a' || s[i] > 'z') return 0; // A maradék többi kisbetü
  89. }
  90. return 1;
  91. }
  92.  
  93. int szame(char s[])
  94. {
  95. int i;
  96. for (i = 0; s[i] != '\0'; i++) {
  97. if (s[i] < '0' || s[i] > '9') return 0;
  98. }
  99. return 1;
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement