首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

打印算法!请好心人帮帮忙

2012-02-22 
求一个打印算法!请好心人帮帮忙!是一个打印条形码的程序,要求如下:比如:条码总数40列数4按行打印1112131

求一个打印算法!请好心人帮帮忙!
是一个打印条形码的程序,要求如下:
比如:条码总数=40   列数=4   按行打印
1       11       21       31
2       12       22       32
3       13       23       33
4       14       24       34
5       15       25       35
6       16       26       36
7       17       27       37      
8       18       28       38
9       19       29       39
10     20       30       40
实在是搞不好了   请帮我想一下     关键是要求   先打1   再打11   接着打21   再打31   然后换行   打下一行。请大家帮我!

[解决办法]
先在内存中对数据进行排好
然后进行输出打印

[解决办法]
随便找本数据结构的书看看
[解决办法]
不知道是不是偶理解错了,是这样吗?
考虑了一些特殊情况,不知道是否周到.

#include <iostream>
using namespace std;

void MyPrint(unsigned Count,unsigned Col)
{
int Row=(Count-1)/Col+1;
if(Row <=0 || Count <Col) //Count <Col的情况
{
cout < < "oops! " < < endl;
return;
}

if((Col-1)*Row+1 > Count) //有些分隔本来就做不到,如36分成7列.
{
cout < < "不能实现 " < < Count < < "分成 " < < Col < < "列打针 " < < endl;
return;
}

for(int r=0;r <Row; r++)
{
for(int c=0; c <Col; c++)
{
int v=r+c*Row+1;
if(v <=Count) cout < <v < < '\t ';
}
cout < <endl;
}
}

int main(int argc, char* argv[])
{
MyPrint(40,4);
system( "pause ");
return 0;
}
//---------------------------------------

热点排行