Тема: Використання структури for
Є написаний код, який реалізує такі дії: ввести номер товару, кількість товару, що продано покупцю, виводить на екран який товар проданий, кількість товару і на яку суму.
[code=C++]#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main() {
int t, k;
float t1, t2, t3, t4, t5;
t1 = 29.80, t2 = 45.50, t3 = 9.98, t4 = 44.90, t5 = 67.70;
printf("Nomer tovary Tsina za odynytsyu tovaru\n");
printf("1 29grn 80kop\n");
printf("2 45grn 50kop\n");
printf("3 9grn 98kop\n");
printf("4 44grn 90kop\n");
printf("5 67grn 80kop\n");
printf("Vvedit nomer tovaru\n");
scanf("%d", &t);
printf("Vvedit kilkist tovaru\n");
scanf("%d", &k);
switch(t) {
case 1 : printf("Nomer tovaru: %d", t);
printf("\nKilkist tovaru(sht): %d", k);
printf("\nSuma tovaru: %.2f", k * t1); break;
case 2 : printf("Nomer tovaru: %d", t);
printf("\nKilkist tovaru(sht): %d", k);
printf("\nSuma tovaru: %.2f", k * t2); break;
case 3 : printf("Nomer tovaru: %d", t);
printf("\nKilkist tovaru(sht): %d", k);
printf("\nSuma tovaru: %.2f", k * t3); break;
case 4 : printf("Nomer tovaru: %d", t);
printf("\nKilkist tovaru(sht): %d", k);
printf("\nSuma tovaru: %.2f", k * t4); break;
case 5 : printf("Nomer tovaru: %d", t);
printf("\nKilkist tovaru(sht): %d", k);
printf("\nSuma tovaru: %.2f", k * t5); break;
default: printf("Nevirny nomer tovaru"); break;
}
return 0;
}[/code]
Потрібно переробити так, щоб на початку роботи можна було ввести кількість придбаних товарів, та отримати чек у вигляді. Необхідно використати структуру for.
Товар № - ціна - кількість - до сплати
---------------------------------------------
--------------------------------------------
Загальна сума покупки-----грн.
Переробив так. Але не виходить отримати чек. Допоможіть розібратися, що не так, де помилка.
[code=C++]#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main() {
int k, n, i, num ;
float t1, t2, t3, t4, t5;
t1 = 29.80, t2 = 45.50, t3 = 9.98, t4 = 44.90, t5 = 67.70;
printf("\n\nNomer tovary Tsina za odynytsyu tovaru\n");
printf("1 29grn 80kop\n");
printf("2 45grn 50kop\n");
printf("3 9grn 98kop\n");
printf("4 44grn 90kop\n");
printf("5 67grn 80kop\n");
n = 5;
i = n;
for(i = 0; i < n; i++) {
printf("\n\n Vvedit nomer tovaru vid 1 do %d\n 0 dlya zavershennya\n ", n);
scanf("%d", &num);
switch(num) {
case 0: i = n; break;
default:
if(num > n) {
printf(" \nNemaye takoho\n");
--i;
break;
}
printf("\nVybranyy nomer tovaru %d. Vvedit kilkist tovaru: ", num);
scanf ("%d", &k);
}
}
printf("\n\n\nTovar № - thina - kilkist - do splaty\n");
switch(num) {
case 1 : printf("%d %.2f %d %.2f\n", num, t1, k, k * t1); break;
case 2 : printf("%d %.2f %d %.2f\n", num, t2, k, k * t2); break;
case 3 : printf("%d %.2f %d %.2f\n", num, t3, k, k * t3); break;
case 4 : printf("%d %.2f %d %.2f\n", num, t4, k, k * t4); break;
case 5 : printf("%d %.2f %d %.2f\n", num, t5, k, k * t5); break;
}
printf(
"Zagalna suma pokypku %.2f grn.",
(k * t1) + (k * t2) + (k * t3) + (k * t4) + (k * t5)
);
return 0;
}[/code]