ผลต่างระหว่างรุ่นของ "Algo lab/templates/postfix"
ไปยังการนำทาง
ไปยังการค้นหา
Jittat (คุย | มีส่วนร่วม) (สร้างหน้าด้วย "<syntaxhighlight lang="cpp"> #include <iostream> #include <string> #include <iomanip> using namespace std; typedef double ValueType; struct ListNode {...") |
Jittat (คุย | มีส่วนร่วม) |
||
(ไม่แสดง 1 รุ่นระหว่างกลางโดยผู้ใช้คนเดียวกัน) | |||
แถว 1: | แถว 1: | ||
+ | '''Comments:''' | ||
+ | |||
+ | * Since the stack has to keep doubles, we change <tt>ValueType</tt> to <tt>double</tt>. | ||
+ | * We use <tt>iomanip</tt> to set precision. | ||
+ | * We use function <tt>stod</tt> to convert strings to doubles. (s-to-d) | ||
+ | |||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
#include <iostream> | #include <iostream> | ||
แถว 5: | แถว 11: | ||
using namespace std; | using namespace std; | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
แถว 36: | แถว 16: | ||
{ | { | ||
string buffer; | string buffer; | ||
− | |||
− | |||
do { | do { |
รุ่นแก้ไขปัจจุบันเมื่อ 02:21, 26 สิงหาคม 2567
Comments:
- Since the stack has to keep doubles, we change ValueType to double.
- We use iomanip to set precision.
- We use function stod to convert strings to doubles. (s-to-d)
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
int main()
{
string buffer;
do {
cin >> buffer;
if(buffer.at(0) == '=') {
break;
} else if((buffer.at(0) >= '0') && (buffer.at(0) <= '9')) {
double val = stod(buffer);
// *****************************
// insert val into the top of the stack
} else {
// *****************************
// buffer is an operator.
// your code here
}
} while(true);
cout << fixed << setprecision(4) << head->val << endl;
}