QT学习之路(1):彩票绝对不中模拟器
//============================================
//绝对不中,彩票开奖模拟器
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QHash>
#include <QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_2_clicked()
{
//开奖原理
//从hash中随机找某个key,如果没有,就说明开出的奖不会有人中
//知识点4 QString
QString t;
// qDebug()<<rand() % 10;
for(int i=0;i<1000;i++)
{
//5 字符串直接赋值
t = "";
for(int j=0;j<6;j++)
{
//6 ascii值-->qchar字符
t.append( QChar(1+rand()%32));
}
t.append(QChar(1+rand()%15));
//7 hash元素访问,op重载
if(cp[t]<=0){
QString t2="";
QByteArray a;
a=t.toLatin1(); //8 QString ==> QByteArray
for(int j=0;j<7;j++)
{
t2 = t2 + QString::number(a[j])+","; //9 QString::number将int-- > Qstring
}
ui->lineEdit->setText(t2); //10 ui元素访问
ui->label->setText("特等奖注数:0");
}
}
}
void MainWindow::on_pushButton_clicked()
{
QString t;
// qDebug()<<rand() % 10;
for(int i=0;i<1000000;i++)
{
t = "";
for(int j=0;j<6;j++)
{
t.append( QChar(1+rand()%32));
}
t.append(QChar(1+rand()%15));
cp[t] = cp[t] + 1; //hashmap 元素值 + 1
}
}