Advertisement
Guest User

Untitled

a guest
Oct 1st, 2014
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.20 KB | None | 0 0
  1. /*
  2. Author: Andrii Omelianenko
  3. Group: K-15
  4. Problem:
  5. Лабоsраторна робота №1-1-4. Таблиця.
  6. Користувач вводить розмір таблиці (кількість рядків та кількість стовпчиків).
  7. Потім вводить довжину одного стовпчика (в символах).
  8. Потім значення клітинок таблиці (спочатку весь 1-й рядок, потім весь другий і т.д.).
  9. Програма повинна вивести охайно оформлену таблицю з полями:
  10. вертикальне поле – “|”, горизонтальне поле – “-”, перетин – “+”.
  11. Розмір таблиці та значення клітинок береться з того, що ввів користувач напочатку.
  12. */
  13.  
  14. #include<bits/stdc++.h>
  15.  
  16. const int N=1000;
  17.  
  18. using namespace std;
  19.  
  20. char a[N][N];
  21. string fb, b[N][N];
  22. int nm, nw, d, n, k, i, j, p, m;
  23.  
  24. main()
  25. {
  26. cout<<"Enter rows and cols count: ";
  27. cin>>n>>m;
  28. cout<<"Enter column lentgh: ";
  29. cin>>k;
  30. k++;
  31. cout<<"Enter gird contents:\n";
  32. for(i=1; i<=n; i++)
  33. for(j=1; j<=m; j++)
  34. cin>>b[i][j];
  35. nm=0;
  36. for(i=1; i<=n+1; i++)//основний цикл
  37. {
  38. nm++;//присвоєння непарних рядків табилці
  39. for(j=1; j<=m*k+1; j++)
  40. if(j%k==1)a[nm][j]='+';
  41. else a[nm][j]='-';
  42. if(i==n+1)break;
  43. nm++;
  44. nw=0;
  45. for(j=1; j<=m*k+1; j++) //присвоєння парних рядків таблиці
  46. if(j%k==1)
  47. {
  48. nw++;
  49. d=0;
  50. a[nm][j]='|';
  51. }else
  52. {
  53. d++;
  54. fb=b[i][nw];
  55. if(d>fb.length())a[nm][j]=' ';
  56. else a[nm][j]=fb[d-1];
  57. }
  58. }
  59.  
  60. //Виведення:
  61. for(i=1; i<=nm; i++)
  62. {
  63. for(j=1; j<=m*k+1; j++)
  64. cout<<a[i][j];
  65. cout<<"\n";
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement