Guest User

Untitled

a guest
May 25th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <locale.h>
  3.  
  4. int main()
  5. {
  6. setlocale(LC_ALL, "rus");
  7. const int n = 3, m = 6;
  8. int a[n][m];
  9. int i, j;
  10. int k = 0, f = 0, p = 0,y =0; //k- для подсчёта 1 в стобце\строке
  11. //f- для подсчёта строк содер-х хотя бы одну 1
  12. //p- для определения однозначности
  13. //y - для подсчёта всюду или частично определено
  14. printf("\nЗаполните матрицу, чтобы 1 стояла на пересечении элементов имеющих связь, 0 в противном случае");
  15.  
  16. //заполнение матрицы
  17. for (i = 0; i < n; i++)
  18. for (j = 0; j < m; j++) {
  19. scanf_s("%d", &a[i][j]);
  20. }
  21. //вывод матрицы
  22. for (i = 0; i < n; i++) {
  23. for (j = 0; j < m; j++) {
  24. printf("\t%d", a[i][j]);
  25. }
  26. printf("\n");
  27. }
  28.  
  29. //найдем область определения
  30. printf("\nОбласть определения: {");
  31. for (i = 0; i < n; i++, k = 0) {
  32. for (j = 0; j < m; j++) {
  33. if (a[i][j] == 1)
  34. k++;
  35. }
  36. if (k != 0) {
  37. printf("a%d",i+1);
  38. printf(" ");
  39. y++;
  40. }
  41. }
  42. printf("}");
  43.  
  44. //в\на и многозначность\однозначность
  45. for (i = 0, k = 0; i < m; i++, k = 0) {
  46. for (j = 0; j < n; j++) {
  47. if (a[j][i] == 1)
  48. k++;
  49. }
  50. if (k != 0) {
  51. f++;
  52. if (k > 1) {
  53. p++;
  54. }
  55. }
  56. }
  57. printf("\nСюрьекция:");
  58. if ((f == m) && (y==n) && (p==0))
  59. printf("+ "); else
  60. printf("- ");
  61.  
  62. return 0;
  63. }
Add Comment
Please, Sign In to add comment