Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.97
_andrew_
22 / 22 / 3
Регистрация: 14.11.2012
Сообщений: 64
#1

Вывести данные в виде таблицы - C++

14.11.2012, 18:41. Просмотров 6304. Ответов 8
Метки нет (Все метки)

Доброго времени суток!
Необходимо данные вывести в виде таблицы. Я нарисовал таблицу и выровнял все столбики, кроме последнего( Может кто-нибудь посоветует как проще это сделать?


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include<iostream>
#include<conio.h>
#include<cmath>
using namespace std;
int main()
{
    int V_v,V_s;
    float t;
     cout<<"|Скорость ветра|Скорость Самолета| Время полета |\n";
    double L=700000;
    V_v=0;
    V_s=100;
   do{
      for(V_s=100;V_s<=600;V_s+=100 ) {
                          t=(L*(V_s-V_v)+L*(V_s+V_v))/(V_s*V_s-V_v*V_v);
                          
   //  последнем столбце необходимо выровнять границу таблицы, а то получается ерунда
  // Может задать количество знаков после запятой для t ???
                            
                  if(V_v<=9)cout<<"| "<<V_v<<"            |"<<V_s<<"              |"<<t/60<<"          |"<<"\n";
          if(V_v>9&&V_v<100)cout<<"|  "<<V_v<<"          |"<<V_s<<"              |"<<t/60<<"          |"<<"\n";
                  if(V_v>99)cout<<"|   "<<V_v<<"        |"<<V_s<<"              |"<<t/60<<"          |"<<"\n";                           
                              }                              
                              V_v+=10;
                              cout<<"\n";
                              }
                              while(V_v<=100);  
                              
                              getch();
                              return 0;
                              }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2012, 18:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести данные в виде таблицы (C++):

Вывести данные из файла в виде таблицы - C++
Помогите пожалуйста вывести данные из файла в виде таблице. Ввод сделал а вывод не получается. #include &lt;iostream&gt; #include...

Найти объём пирамиды, и вывести данные в виде таблицы - C++
Уважаемие, помогите новичку пожалуйста. Как создать таблицу в С++ с помощью функций?

Считать данные из текстового файла, переписать в бинарный, и вывести в виде выровненной таблицы - C++
считываю из файла имя, фамилию, номер телефона и тип. необходимо переписать это в бинарный файл и вывести данные в виде выровненной...

Надо передать данные в виде таблицы - C++
Сделал некий ActiveX контрол в который надо передать данные в виде таблицы. То есть передать-то я их могу в любом виде но они должны...

Вывести массив на экран в виде таблицы, в конце каждой строки надо вывести минимальный элемент - C++
Ребят , как вывести маленький элемент , что изменить в коде знак &quot;&gt;&quot; меняю на &quot;&lt;&quot; - не выходит. #include &lt;iostream&gt; #include...

Данные о читателях должны быть организованны в виде хеш-таблицы - C++
Данные о каждом читателе должны содержать: № читательского билета – строка формата «ANNNN-YY», где A – буква, обозначающая права доступа...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
mrmaster88
42 / 42 / 3
Регистрация: 13.04.2012
Сообщений: 112
14.11.2012, 18:49 #2
Цитата Сообщение от _andrew_ Посмотреть сообщение
как проще это сделать?
установка флагов в setf() или манипуляторами
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
14.11.2012, 18:53 #3
Используй символы табуляции \t
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include<iostream>
#include<conio.h>
#include<cmath>
using namespace std;
int main()
{
    int V_v,V_s;
    float t;
    
     cout<<"|Скорость ветра\t|Скорость Самолета\t| Время полета\t|\n";
    double L=700000;
    V_v=0;
    V_s=100;
   do{
      for(V_s=100;V_s<=600;V_s+=100 ) {
                          t=(L*(V_s-V_v)+L*(V_s+V_v))/(V_s*V_s-V_v*V_v);
                          
   //  последнем столбце необходимо выровнять границу таблицы, а то получается ерунда
  // Может задать количество знаков после запятой для t ???
                            
                  if(V_v<=9)cout<<"|\t"<<V_v<<"|\t"<<V_s<<"|\t"<<t/60<<"|\t"<<"\n";
          if(V_v>9&&V_v<100)cout<<"|\t"<<V_v<<"|\t"<<V_s<<"|\t"<<t/60<<"|\t"<<"\n";
                  if(V_v>99)cout<<"|\t"<<V_v<<"|\t"<<V_s<<"|\t"<<t/60<<"|\t"<<"\n";                           
                              }                              
                              V_v+=10;
                              cout<<"\n";
                              }
                              while(V_v<=100);  
                              
                              getch();
                              return 0;
                              }
0
_andrew_
22 / 22 / 3
Регистрация: 14.11.2012
Сообщений: 64
15.11.2012, 01:41  [ТС] #4
Цитата Сообщение от mrmaster88 Посмотреть сообщение
установка флагов в setf() или манипуляторами
с помощью флагов попробовал, но одна беда: в итоге получаются разные по длине результаты (Пр:77.8643 и 245.3455 )и
надо переменную ограничить по количеству выводимых символов (включая точку), а не цифр после плавающей точки.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include<iostream>
#include <iomanip>
#include<conio.h>
#include<cmath>
using namespace std;
int main()
{
    int V_v,V_s;
    float t;
     cout<<"|Скорость ветра|Скорость Самолета| Время полета |\n\n";
    double L=700000;
    V_v=0;
    V_s=100;
   do{
      for(V_s=100;V_s<=600;V_s+=100 ) {
                          t=(L*(V_s-V_v)+L*(V_s+V_v))/(V_s*V_s-V_v*V_v);
                          
cout.setf(ios::fixed);
cout << setprecision(4);
 
              
                            
                  if(V_v<=9)cout<<"| "<<V_v<<"            |"<<V_s<<"              |"<<t/60<<"         |"<<"\n";
          if(V_v>9&&V_v<100)cout<<"|  "<<V_v<<"          |"<<V_s<<"              |"<<t/60<<"         |"<<"\n";
                  if(V_v>99)cout<<"|   "<<V_v<<"        |"<<V_s<<"              |"<<t/60<<"         |"<<"\n";  
                                      
                              }                              
                              V_v+=10;
                              cout<<"\n";
                              }
                              while(V_v<=100);  
                              
                              getch();
                              return 0;
                              }
0
Миниатюры
Вывести данные в виде таблицы  
mrmaster88
42 / 42 / 3
Регистрация: 13.04.2012
Сообщений: 112
15.11.2012, 13:11 #5
Цитата Сообщение от _andrew_ Посмотреть сообщение
по количеству выводимых символов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
#include <iomanip>
#include<conio.h>
#include<cmath>
using namespace std;
int main()
{
    int V_v,V_s;
    float t;
     cout<<"|Скорость ветра|Скорость Самолета| Время полета |\n\n";
    double L=700000;
    V_v=0;
    V_s=100;
   do{
      for(V_s=100;V_s<=600;V_s+=100 ) {
                          t=(L*(V_s-V_v)+L*(V_s+V_v))/(V_s*V_s-V_v*V_v);
 
cout.setf(ios::fixed);
cout << setprecision(4);
//cout<<(ios::right);
 
 
    if(V_v<=9)cout<<"|"<<setw(8)<<V_v<<setw(7)<<"|"<<setw(10)<<V_s<<setw(8)<<"|"<<setw(11)<<t/60<<setw(4)<<"|"<<"\n";
    if(V_v>9&&V_v<100)cout<<"|"<<setw(8)<<V_v<<setw(7)<<"|"<<setw(10)<<V_s<<setw(8)<<"|"<<setw(11)<<t/60<<setw(4)<<"|"<<"\n";
    if(V_v>99)cout<<"|"<<setw(8)<<V_v<<setw(7)<<"|"<<setw(10)<<V_s<<setw(8)<<"|"<<setw(11)<<t/60<<setw(4)<<"|"<<"\n";
    }
    //  cout<<(ios::left);
    V_v+=10;
    cout<<"\n";
    }  while(V_v<=100);
 
     getch();
    return 0;
    }
Добавлено через 8 минут
там у вас в одном месте печатается inf, проверьте условие
1
_andrew_
22 / 22 / 3
Регистрация: 14.11.2012
Сообщений: 64
15.11.2012, 14:16  [ТС] #6
mrmaster88, спасибо огромное, все вышло, только вот почему-то появилось число 32??? Откуда, непонятно).
См. скриншот
а #inf пишет, потому, что скорость самолета и ветра одинакова)) он никогда не прилетит)
0
Миниатюры
Вывести данные в виде таблицы  
_andrew_
22 / 22 / 3
Регистрация: 14.11.2012
Сообщений: 64
15.11.2012, 14:34  [ТС] #7
mrmaster88, извиняюсь, все ОК) Убрал
C++
1
2
 cout<<(ios::right);
cout<<(ios::left);
и все работает) Спасибо !!! Только вот не пойму, откуда появляются числа 128 и 32 когда вставляешь строки
C++
1
2
cout<<(ios::right);
cout<<(ios::left);
(скрин)???
0
mrmaster88
42 / 42 / 3
Регистрация: 13.04.2012
Сообщений: 112
15.11.2012, 14:48 #8
Цитата Сообщение от _andrew_ Посмотреть сообщение
когда вставляешь строки
они уже не нужны, я их закомментировал

Добавлено через 8 минут
Цитата Сообщение от _andrew_ Посмотреть сообщение
а #inf пишет
это не хорошо, пересмотрите алгоритм
1
_andrew_
22 / 22 / 3
Регистрация: 14.11.2012
Сообщений: 64
15.11.2012, 16:22  [ТС] #9
mrmaster88, спасибо, посмотрю
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2012, 16:22
Привет! Вот еще темы с ответами:

Структуры: отобразить на экран анкетные данные студентов-отличников в виде таблицы - C++
Помогите разобраться как написать программу,вообще не понимаю алгоритм действий и как составить программу( Дан список учебной группы, ...

Вывести матрицу в виде таблицы - C++
Помогите, пожалуйста, переделать программу, чтобы &quot;переделанный массив&quot;, коротая получается в виде строки, записать матрицой. Новый массив...

Вывести информацию в виде таблицы - C++
помогите, после введения данных , в конце программами должна выводится инф. в виде таблицы #include &lt;stdio.h&gt; #include &lt;iostream&gt; ...

Вывести текст в виде таблицы - C++
подскажите пожалуйста как сделать таблицу! это моя шапка таблицы void baza::output_izdelie() { cout&lt;&lt;&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.11.2012, 16:22
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru