QList<Model::Additional> Additional::getAll() { QList<Model::Additional> additionals; DatabaseManager mgr; QSqlQuery query("SELECT * from additionals"); query.exec(); while(query.next()) { int id = query.value(0).toInt(); QString arabicName = query.value(1).toString(); QString englishName = query.value(2).toString(); int price = query.value(3).toInt(); Model::Additional additional(id, price, arabicName, englishName); additionals.append(additional); } return additionals; }
Model::Additional Additional::getById(int id) { QList<Model::Additional> additionals; DatabaseManager mgr; QSqlQuery query; query.prepare("SELECT * from additionals WHERE id = ?"); query.addBindValue(id); query.exec(); while(query.next()) { int id = query.value(0).toInt(); QString arabicName = query.value(1).toString(); QString englishName = query.value(2).toString(); int price = query.value(3).toInt(); Model::Additional additional(id, price, arabicName, englishName); additionals.append(additional); } return additionals.first(); }
int main(void) { int x, y; char sign; float numerator, denominator; do { printf("> "); scanf("%c",&sign); switch(sign) { case '+': scanf("%d%d",&x,&y); printf("# %d\n",additional(x,y)); break; case '-': scanf("%d%d",&x,&y); printf("# %d\n",subtraction(x,y)); break; case '/': scanf("%f%f",&numerator,&denominator); printf("# %.2f\n",division(numerator,denominator)); break; case 'd': scanf("%d%d",&x,&y); printf("# %d\n",divisionRemain(x,y)); break; case 'm': scanf("%d%d",&x,&y); printf("# %d\n",modulo(x,y)); break; case '*': scanf("%d%d",&x,&y); printf("# %d\n",multiply(x,y)); break; case '^': scanf("%d%d",&x,&y); printf("# %ld\n",power(x,y)); break; case '!': scanf("%d",&x); printf("# %lld\n",factorial(x)); break; case 's': scanf("%d",&x); printf("# %d\n",sum(x)); break; case 'a': scanf("%d",&x); printf("# %.2f\n",average(x)); break; case 'c': scanf("%d%d",&x,&y); printf("# %lld\n",combinations(x,y)); break; } getchar(); } while(sign != 'q'); return 0; }