Hirdetés
- One mobilszolgáltatások
 - iPhone topik
 - Még nincs is Vivo X300 Ultra, de már a nemzetközi kameratrónra pályázik
 - „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
 - Yettel topik
 - Szakított a OnePlus és a Hasselblad
 - iOS alkalmazások
 - Xiaomi 15T Pro - a téma nincs lezárva
 - MIUI / HyperOS topik
 - Mobil flották
 
Új hozzászólás Aktív témák
- 
			
			
						ceginner
csendes tag
Köszönöm Szépen Zoli!
Meg fogom nézni hamarosan, sokat segítettél ezzel!
   
 - 
			
			
						ceginner
csendes tag
Minden segítség jól jöhet! Lehet, hogy pont találok benne valami olyat, ami sokat segít.
Már vagy 7 verziót írtam, 5-öt töltöttem fel eddig, de 0 pontot kaptam rá. Annál csak jobb lehet. Akkor légyszi küldd már el...
 
 - 
			
			
						ceginner
csendes tag
Sziasztok Sorstársak!
Elakadtam a 2. kötprogival és egy kis segítség kellene. Konkrétan a LÁDAPAKOLÁS lenne a téma. Konkrétabban: Egy gyárban egy nap csak azonos súlyú termékeket gyártanak és ezeket ládába pakolják, egy ládában max. 100 kg lehet. Egy nap max. 1000 db-ot készítenek egy-egy S súlyú termékből... Azt hogy melyik ládába pakoljunk a legkisebb négyzetek módszerével kellene megkeresni, de sehogy sem sön ki az adott kimenet.
 Mit ronthattam el?  
 
Bemenetben az első szám a napok száma, a második két szám pedig db és súly.
Már nem ez az első verzió, de már tisztára belezavarodtam. Nem tudom hogyan kellene megírni jól az algoritmust, hogy 100 db fölötti adatokra is jól működjön.Pl.: Bemenet:
1
347 6Kimenet:
0000010000010000010000010
0000100000100000000000100
0001000001000001000002000
0020000030000040000060000Az első sor első eleme, az egy kilós ládák száma - és így tovább egyészen százig...
Az általam írt kód:
#include <stdio.h>
#define M 1000
#define N 100
int Sulyok[M+1]={0};
int Darabok[N+1]={0};
int darab(int suly)
{
int j,s;
int r=1;
s = suly;
for(j=0;j<N;j++)
if (Sulyok[j] == s) r+= 1; //else r=N-1;
return r;
}
void pakol(int db,int s)
{
int K=0,a=0;
int i=0,j=0,k=1,l=0;
int opt=0;
int szumma=1000;
int NAGYSZAM = 10000;
int ossz;
int suly;
ossz = db*s;
suly = s;
Sulyok[0] = s; //az első elemet betesszük
while(i <db){
if ((s == 1) && (suly%100 != 0)) {Darabok[99] = db/10; Darabok[0] = 0;/*Darabok[100-Sulyok[k-1]]-=1;*/}
if (Sulyok[k-1] <= 100)
{
if (suly != 1) Sulyok[k] += suly;
// k+=1;
szumma = darab(Sulyok[k-1]+s)*darab(Sulyok[k-1]+s); //gyakorisag az uj suly berakasa utan
if (szumma <= NAGYSZAM)
{opt += 1;
NAGYSZAM = szumma;
k=i;
if(opt >= 1)
for(l=0;l<=k;l++)
{
if(Sulyok[l] > K) {K=Sulyok[l]; k=l;}
}
} else k+=1; //ha ezek a feltetelek nem teljesulnek uj lada kell
/ if (Sulyok[k] == (100-Sulyok[k])) {Darabok[100] += 1;}
Darabok[Sulyok[k]-1] += 1;
}
i += 1;
}
}
void kiir2(){
int i=0,j,k,l,m;
FILE* ki;
ki=fopen("ki.txt","w");
while(i<4){
for (j=0;j<N/4;j++){
if (i>0) k = (i*25)+j;
fprintf(ki,"%d ", Darabok[((i*25)+j)]); }
i+=1; fputc('\n',ki);}
fclose(ki);
}
int main()
{
int i;
int nap,suly,db;
FILE* in;
in=fopen("be.txt","r");
fscanf(in,"%d",&nap);
if (nap >=1 && nap<=10)
for (i=0;i<nap;i++){ fscanf(in,"%d %d",&db,&suly);
if (db >= 1 && db <= 1000)
if (suly >=1 && suly <=100) {
//feldolgozhatjuk az adatokat
pakol(db,suly);
}
}
kiir2();
fclose(in);
return 0;
}Minden segítséget és hozzászólást előre is köszönök!
 
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Hálózati / IP kamera
 - One mobilszolgáltatások
 - HiFi műszaki szemmel - sztereó hangrendszerek
 - Autós topik
 - Házimozi belépő szinten
 - Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
 - droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
 - Milyen monitort vegyek?
 - iPhone topik
 - Arc Raiders
 - További aktív témák...
 
- Windows 10 / 11 Pro Retail aktiváló kulcs Azonnal szállítással, számlával, garanciával!
 - HP ZBook Studio x360 Gen5 Intel Xeon E-2176M
 - GYÖNYÖRŰ iPhone SE 2022 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3366
 - DELL PowerEdge R730xd 16LFF 160TB+400GB 2U rack - 2xE5-2683v4 (16c/32t),256GB RAM,2x10G NET,HBA330
 - HIBÁTLAN iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3667 100% Akkumulátor
 
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő
						
								
   
 
 Mit ronthattam el?  
 

