Comparatore elaborato da ChatGPT

Risultati

Ordinati per punteggio (alto → basso). Il verde indica qualità maggiore.

⚠️ Prototipo informativo. Verifica sempre ore, prezzi e condizioni sui siti ufficiali.

`; // --- dati (17 provider) --- const PROVIDERS = [ { name:"Accademia del Test", url:"https://corsi.accademiadeltest.com/", offer:"MedStart (128h) + locali/online", hours:128, price:null, maxStudents:25, onDemand:true, micro:false, sims:5, freeSims:0, guaranteeLevel:0 }, { name:"Alpha Test", url:"https://www.alphatest.it/", offer:"Manuali, simulatore, corsi online", hours:40, price:80, maxStudents:null, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:0 }, { name:"Cordua", url:"https://www.corduapreparazione.it/", offer:"Corsi specifici Medicina", hours:90, price:null, maxStudents:30, onDemand:true, micro:false, sims:6, freeSims:0, guaranteeLevel:0 }, { name:"DispensoAcademy", url:"https://dispensoacademy.it/", offer:"Pacchetti teoria + simulazioni", hours:80, price:null, maxStudents:30, onDemand:true, micro:false, sims:12, freeSims:0, guaranteeLevel:0 }, { name:"Dotto.me", url:"https://www.dotto.me/", offer:"Pacchetti semestre filtro", hours:70, price:null, maxStudents:25, onDemand:true, micro:false, sims:8, freeSims:0, guaranteeLevel:0 }, { name:"Futura / Accademia dei Test", url:"https://futura.study/", offer:"Pre-semestre + tutor/mentor", hours:120, price:2000, maxStudents:20, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:2 }, { name:"MedCampus", url:"https://www.medcampus.it/", offer:"Micro-lezioni + coach", hours:60, price:null, maxStudents:10, onDemand:true, micro:true, sims:10, freeSims:0, guaranteeLevel:1 }, { name:"MedicinaSemestreFiltro.it", url:"https://www.medicinasemestrefiltro.it/", offer:"108 lezioni da 25′ + 25 simulazioni", hours:45, price:1170, maxStudents:10, onDemand:true, micro:true, sims:25, freeSims:7, guaranteeLevel:2 }, { name:"Studio Test Universitari", url:"https://www.studiotestuniversitari.it/", offer:"Corsi estivi/base (~180h)", hours:180, price:null, maxStudents:30, onDemand:false, micro:false, sims:8, freeSims:0, guaranteeLevel:0 }, { name:"TeachCorner", url:"https://www.teachcorner.com/", offer:"3 live/sett + registrazioni", hours:90, price:null, maxStudents:30, onDemand:true, micro:false, sims:6, freeSims:0, guaranteeLevel:0 }, { name:"Test Academy", url:"https://test.academy/", offer:"Core / Advanced", hours:120, price:1200, maxStudents:25, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:1 }, { name:"TestAmmissione.com", url:"https://www.testammissione.com/", offer:"Piattaforma + app simulazioni", hours:30, price:99, maxStudents:null, onDemand:true, micro:true, sims:15, freeSims:0, guaranteeLevel:0 }, { name:"Testbusters", url:"https://www.testbusters.it/", offer:"Basic/Plus/Advanced (100–275h)", hours:200, price:549, maxStudents:40, onDemand:true, micro:false, sims:20, freeSims:0, guaranteeLevel:1 }, { name:"UniD Formazione / UnidTest", url:"https://www.unidformazione.com/", offer:"MED 300/340/380/400", hours:320, price:3200, maxStudents:20, onDemand:true, micro:false, sims:15, freeSims:0, guaranteeLevel:1 }, { name:"WAU (WAUniversity)", url:"https://wauniversity.com/", offer:"Pacchetti 120–168h", hours:150, price:990, maxStudents:30, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:0 }, { name:"Futura – Landing Med-LP", url:"https://med-lp.futura.study/", offer:"Variazione landing Futura", hours:120, price:2000, maxStudents:20, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:2 }, { name:"Test Academy (alt brand)", url:"https://www.test.academy/", offer:"Variante brand operativa", hours:120, price:1200, maxStudents:25, onDemand:true, micro:false, sims:10, freeSims:0, guaranteeLevel:1 } ]; // date appelli const exams = [new Date("2025-11-20T00:00:00+01:00"), new Date("2025-12-10T00:00:00+01:00")]; function daysToNextExam(){ const now = new Date(); const diffs = exams.map(d => (d - now) / (1000*60*60*24)).filter(d=>d>=0); if(!diffs.length) return 0; return Math.ceil(Math.min(...diffs)); } document.getElementById("msf-days").textContent = daysToNextExam(); function clamp01(x){ return Math.max(0, Math.min(1, x)); } function score(p, w, ctx){ let s = 0; // Flessibilità: on-demand + micro-lezioni const shortLessons = p.micro ? 1 : 0.5; const flexibility = ((p.onDemand?1:0) + shortLessons)/2; s += w.flexibility*flexibility; // Numero di studenti per classe (più basso è meglio) let smallClassScore = 0.5; if (p.maxStudents!==null){ if (p.maxStudents({...p, score:score(p,w,ctx)})).sort((a,b)=>b.score-a.score); const res = document.getElementById("msf-results"); const maxScore = list.length ? list[0].score : 1; const minScore = list.length ? list[list.length-1].score : 0; const range = Math.max(0.0001, maxScore - minScore); res.innerHTML = list.map((p,i)=>{ const norm = clamp01((p.score - minScore) / range); const bg = greenBG(norm); return `
#${i+1}
${p.name}
${p.url.replace("https://","")}
${(p.score*100).toFixed(0)}/100
${p.offer}
${p.onDemand?'On-demand':''} ${p.micro?'Micro-lezioni':''} ${(p.maxStudents!==null)?'Max '+p.maxStudents+'':'Classe ND'} ${typeof p.hours==='number'?''+p.hours+'h totali':''} ${p.sims?''+p.sims+' simulazioni':''} ${p.freeSims?''+p.freeSims+' prove gratuite':''} ${p.guaranteeLevel>=2?'Ammesso o rimborsato':(p.guaranteeLevel>=1?'Ripreparato/condiz.':'')} ${p.price?'~€'+p.price+'':''}
`; }).join(""); } ["msf-weeklyHours","msf-flexibility","msf-smallClass","msf-price","msf-guarantees","msf-simulations","msf-coaching","msf-hoursFit"] .forEach(id => document.getElementById(id).addEventListener("input", render)); function init(){ document.getElementById("msf-days").textContent = daysToNextExam(); render(); } init(); })();
Torna in alto