将日志表格式化为行

formatting a log table in rows

本文关键字:格式化 表格 日志      更新时间:2023-10-16
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main(){

//Numbers 1 - 10
cout << "Number" ;
for (int i = 1; i <= 10; i++) {
cout << "n" << i  ;
}//end for
cout << endl;

//log base 2
cout << "n" << "Log base 2" << "n";
for(int x = 1; x <= 10; x++){
cout<<log2(x)<<endl;
}//end for

//log base 10
cout << "n" << " Log base 10 " << "n" ;
for ( int y = 1; y <= 10; y++){
cout<<log10(y)<<endl;
}//end for

cout << "Log base e";
for (int z = 1; z <=10 ; z++){

}
}//end main

所以我必须创建一个日志表,但我在格式化它们时遇到了问题。有人能帮忙吗?但除此之外,一切都很好,一切都编译得很好,不会出现任何错误,但这里有一个表应该是的例子

编号_______日志库2 _______日志库10 _______日志库e

1 ________0.000__________0.000_____0.000atr

2 _________1.000 __________0.301_____0.693

下面是打印表格的完整代码。您可以在以下位置看到实时输出:https://wandbox.org/permlink/KI98R333vH9vUCBk

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
void print_header()
{
std::cout << std::setw(20) << std::setfill('_') << std::left << "Number "
<< std::setw(20) << std::setfill('_') << std::left << "Log base 2 "
<< std::setw(20) << std::setfill('_') << std::left << "Log base 10 "
<< std::setw(20) << std::setfill(' ') << std::left << "Log base e " << std::endl;
}
void print_table(int num)
{
std::cout << std::setw(20) << std::setfill('_') << std::left << num
<< std::setw(20) << std::setfill('_') << std::left << log2(num)
<< std::setw(20) << std::setfill('_') << std::left << log10(num)
<< std::setw(20) << std::setfill(' ') << std::left << log(num) << std::endl;
}

int main(){
print_header();
for (int i = 1; i <= 10; i++) {
print_table(i);
}//end for
}//end main

输出:

Number _____________Log base 2 _________Log base 10 ________Log base e          
1___________________0___________________0___________________0                   
2___________________1___________________0.30103_____________0.693147            
3___________________1.58496_____________0.477121____________1.09861             
4___________________2___________________0.60206_____________1.38629             
5___________________2.32193_____________0.69897_____________1.60944             
6___________________2.58496_____________0.778151____________1.79176             
7___________________2.80735_____________0.845098____________1.94591             
8___________________3___________________0.90309_____________2.07944             
9___________________3.16993_____________0.954243____________2.19722             
10__________________3.32193_____________1___________________2.30259