Advertisement
Guest User

Untitled

a guest
Dec 18th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.30 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <iostream>
  3. #include <stdlib.h>
  4. #include <windows.h>
  5. #include <locale>
  6. #include <string>
  7. #include <locale.h>
  8. #include <algorithm>
  9.  
  10. using namespace std;
  11.  
  12. int n, m, global = 0;
  13.  
  14. void mas(int **a) {
  15. printf("Введите количество строк матрицы: ");
  16. scanf_s("%d", &n);
  17. printf("Введите количество столбцов матрицы: ");
  18. scanf_s("%d", &m);
  19. printf("Введите массив %d x %d:\n\n", n, m);
  20. for (int i = 0; i < n; i++) {
  21. a[i] = new int[m];
  22. }
  23. for (int i = 0; i < n; i++) {
  24. for (int j = 0; j < m; j++) {
  25. scanf_s("%d", &a[i][j]);
  26. }
  27. }
  28. }
  29.  
  30. void mas2(int **a) {
  31. int c = 0;
  32. int q = 0;
  33. for (int i = 0; i < n; i++) {
  34. for (int j = 0; j < m; j++) {
  35. if (a[i][j] == 0) {
  36. c = 1;
  37. }
  38. }
  39. if (c == 0) {
  40. q = 1;
  41. break;
  42. }
  43. c = 0;
  44. }
  45. if (q == 1) {
  46. printf("Не все строки содержат нули, заменяем все отрицательные элементы нулем\n");
  47. for (int i = 0; i < n; i++) {
  48. for (int j = 0; j < m; j++) {
  49. if (a[i][j] < 0) {
  50. a[i][j] = 0;
  51. }
  52. }
  53. }
  54. } else {
  55. printf("Все строки содержат нулевой элемент\n");
  56. }
  57. }
  58.  
  59. void stroki() {
  60. locale loc("Russian_Russia");
  61. char s[] = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1";
  62. printf("Введите строку: ");
  63. char stroka[101];
  64. cin >> stroka;
  65. printf("\nРезультат: ");
  66. for (int i = 0; stroka[i] != '\0'; i++) {
  67. for (int j = 0; j <= 52; j++) {
  68. if (stroka[i] == s[j] && j < 52) {
  69. printf("?");
  70. break;
  71. } else if (j == 52) {
  72. printf("%c", toupper(stroka[i], loc));
  73. break;
  74. }
  75. }
  76. }
  77. }
  78.  
  79. void print(int **a) {
  80. printf("Вывод массива:\n\n");
  81. for (int i = 0; i < n; i++) {
  82. for (int j = 0; j < m; j++) {
  83. printf("%d ", a[i][j]);
  84. }
  85. printf("\n");
  86. }
  87. }
  88.  
  89. int main() {
  90. SetConsoleCP(1251);
  91. SetConsoleOutputCP(1251);
  92. int **a = new int*[n];
  93. int number = 0, check = 0;
  94. printf("1. Ввести новый массив: \n");
  95. printf("2. Проверить все ли строки матрицы содержат хотябы 1 нулевой элемент: \n");
  96. printf("3. Вывод массива\n");
  97. printf("4. Работа со строкой\n");
  98. printf("5. Выход\n");
  99. printf("\nВыберите номер задания: ");
  100. while (number != 5) {
  101. scanf_s("%d", &number);
  102. printf("\nВаш выбор: %d\n", number);
  103. if (number == 1) {
  104. mas(a);
  105. global = 1;
  106. printf("\nВыберите номер задания: ");
  107. continue;
  108. }
  109. if (number == 2) {
  110. if (global == 0) {
  111. printf("Вы не ввели массив\n");
  112. } else {
  113. mas2(a);
  114. }
  115. printf("\nВыберите номер задания: ");
  116.  
  117. }
  118. if (number == 3) {
  119. if (global == 0) {
  120. printf("Вы не ввели массив\n");
  121. } else {
  122. print(a);
  123. }
  124. printf("\nВыберите номер задания: ");
  125. continue;
  126.  
  127. }
  128. if (number == 4) {
  129. stroki();
  130. printf("\n\nВыберите номер задания: ");
  131. }
  132. if (number < 1 || number > 5) {
  133. printf("Неправильный номер задания:\nВведите номер задания:\n");
  134. }
  135. }
  136. return 0;
  137. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement