Купить быков, коров, телят - C (СИ)
Формулировка задачи:
Добрый день! Задача состоит в следующем: написать программу, которая выводит на экран всевозможные варианты покупок быков, коров и телят так, что бы было куплено 100 голов на 100 рублей. Считая, что один бык стоит 10 р., корова - 5 р., телёнок - 0,5 р.
Вот что у меня получилось:
Но при таком решении программа выводит только единственный вариант: быков - 1, коров 9, телят 90. Но это не единственный вариант решения. Высылала преподавателю на проверку, вот что он мне ответил:
Вариантов очень много, а не один!
10 быков, 0 коров, 0 телят
9 быков, 1 корова, 10 телят
9 быков, 2 коровы, 0 телят
9 быков, 0 коров, 20 телят
и т.д.
Вы правильно используете тройной цикл, только нужно правильно менять переменные i, j, y , а if() совсем не нужен.
Сколько не пыталась, вывести несколько вариантов не получается. Как можно исправить программу, помогите, пожалуйста!
#include <stdio.h> #include <stdlib.h> int main() { int i, j, y, col=0; for(i=0; i<11; i++) for(j=0; j<21; j++) for(y=0; y<201; y++) if(i*10+j*5+y*0.5==100 && i+j+y==100) { printf("B="); printf("%d\n", i); printf("K="); printf("%d\n", j); printf("T="); printf("%d\n", y); col++; } printf("Col var: "); printf("%d\n", col); return 0; }
Решение задачи: «Купить быков, коров, телят»
textual
Листинг программы
if (fabs(i*10+j*5+y*0.5 - 100) < 0.005 && i+j+y==100)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д