Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
lehrkraefte:blc:informatik:ffprg2017:ln:ln [2017/11/10 07:53] Ivo Blöchliger created |
lehrkraefte:blc:informatik:ffprg2017:ln:ln [2017/11/10 08:39] (current) Ivo Blöchliger [Programmieren mit C++] |
||
---|---|---|---|
Line 3: | Line 3: | ||
* Unter Linux: gcc + Text-Editor | * Unter Linux: gcc + Text-Editor | ||
* Windows: gcc + MINGW + Texteditor oder VisualC++? | * Windows: gcc + MINGW + Texteditor oder VisualC++? | ||
- | * Mac? Keine Ahnung... wohl gc + Text-Editor oder X-Code? | + | * Mac? Keine Ahnung... wohl gcc + Text-Editor oder X-Code? |
=== Hello World === | === Hello World === | ||
Line 22: | Line 22: | ||
} | } | ||
+ | </ | ||
+ | |||
+ | ===== SOI Aufgaben ===== | ||
+ | ==== Task 1, Sushi ==== | ||
+ | === Subtask 1 === | ||
+ | <code c++ sub1.cpp> | ||
+ | #include < | ||
+ | using namespace std; | ||
+ | |||
+ | // Solve problem | ||
+ | int solve(int n, int s, int p[]) { | ||
+ | // Solve problem here | ||
+ | // Return solution | ||
+ | return 42; | ||
+ | } | ||
+ | |||
+ | |||
+ | int main() { | ||
+ | int t=0; // number of test cases | ||
+ | cin >> t; | ||
+ | // Repeat over all test cases | ||
+ | for (int i=0; i<t; i++) { | ||
+ | int n=0; | ||
+ | cin >> n; // number of sushis | ||
+ | int s=0; | ||
+ | cin >> s; // price of bottle | ||
+ | |||
+ | int p[n]; // Array for sushi prices | ||
+ | for (int j=0; j<n; j++) { | ||
+ | cin >> p[j]; // Read sushi price | ||
+ | } | ||
+ | // Solve and output solution | ||
+ | cout << "Case #" << i << ": " << solve(n, | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | == Testdaten == | ||
+ | <code txt sub1.txt> | ||
+ | 2 | ||
+ | 2 0 | ||
+ | 16 42 | ||
+ | 2 0 | ||
+ | 100 64 | ||
+ | </ | ||
+ | |||
+ | == Ausführen == | ||
+ | Nach dem Compilieren z.B. mit | ||
+ | <code bash> | ||
+ | ./sub1.exe < sub1.txt | ||
+ | </ | ||
+ | wird der Inhalt der Datei sub1.txt eingelesen, als ob dies auf der Tastatur eingegeben worden wäre. | ||
+ | == Makefile == | ||
+ | Für jene ohne IDE, hier ein generisches Makefile: | ||
+ | <code makefile Makefile> | ||
+ | SOURCES=$(wildcard *.cpp) | ||
+ | TARGETS=$(patsubst %.cpp, | ||
+ | |||
+ | all: | ||
+ | |||
+ | %.exe: | ||
+ | g++ $< -o $@ | ||
+ | |||
+ | clean: | ||
+ | rm -r *~ *.exe | ||
</ | </ |