Zadanie z C potrzebuje pomocy

0

Napisz program, który otrzymuje z klawiatury wymiary przesyłki i maksymalną objętość kontenera, a następnie oblicza objętość. Następnie podaje komunikat, czy dana objętość zmieści się w kontenerze. Mam na razie coś takiego ale nie działa i nie wiem co dalej.

#include <stdio.h>
#include <stdlib.h>

main()
{

    float x;
    printf("Podaj wymiary przesylki\n");
    printf("Podaj wysokosc przesylki x: ");
    scanf("%.2f \n", &x);
    float y;
    printf("Podaj szerokosc przesylki y:\n");
    scanf("%.2f \n", &y);
    float z;
    printf("Podaj dlugosc przesylki z:\n");
    scanf("%.2f", &z);

    printf("Dlugosc przesylki x,y,z: %.2f, %.2f, %.2f \n", x, y, z);
}
1

Wzor na objetosc znasz?

0

Nom abc w tym przypadku xyz ale chodzi o to że w tym kodzie coś nie działa.

0

U mnie działa* po małej zmianie:


    printf("Podaj wysokosc przesylki x:\n");
    scanf("%f", &x);

i tak dalej dla kolejnych wymiarów

printf("Dlugosc przesylki x,y,z: %.2f, %.2f, %.2f \n", x, y, z);

Raczej wymiary przesyłki, ale mniejsza z tym.
Swoją drogą:

objętość kontenera, a następnie oblicza objętość. Następnie podaje komunikat, czy dana objętość zmieści się w kontenerze

Porównywanie samych objętości imho nie jest poprawne. Mam przesyłkę 2x3x5 i kontener 4x4x4. Jak nie patrzeć 30 < 64, a paczka się raczej nie zmieści.

  • Się znaczy działa kod OP
0

Żeby to miało sens trzeba znać wymiary kontenera i przesyłki.
Pewnie cały problem sprowadza się do tego, że przesyłkę można obracać, by zmieściła się w kontenerze.

Znajomości jedynie odętości kontenera, nie dość że jest niepraktyczna (zwykle kontener nie jest z gumy, ale jest sztywny), ale również zadanie byłoby za proste.

Radziłbym podać pełną i dokładną treść zadania, bo na razie to widzę, streszczenie interpretacji zadania i jakiś kod.

0
#include <stdlib.h>
#include <stdio.h>

const int DimRange=3;

int cmp(const void *a,const void *b) { return *(const int*)a-*(const int*)b; }
void askDimensions(const char *msg,unsigned tb[])
{
	printf("%s: ",msg);
	for(int i=0;i<DimRange;++i) scanf("%u",&i[tb]);
	qsort(tb,DimRange,sizeof(int),cmp);
}

int main()
{
	const char *msg[]={"NIE ",""};
	unsigned dim[DimRange],Dim[DimRange];
	int ok=1;
	askDimensions("Podaj wymiary kontenera",Dim);
	askDimensions("Podaj wymiary przesylki",dim);
	for(int i=0;(ok)&&(i<DimRange);++i) ok&=(i[dim]<=i[Dim]);
	printf("przesylka %smiesci sie w kontenerze",ok[msg]);
	return 0;
}
0

Przydało by się też ustalić co w przypadku gdyby przesyłka miała dokładnie takie same wymiary jak kontener, wejdzie czy nie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1