Laurentvidal.fr vous aide à trouver des réponses fiables à toutes vos questions grâce à une communauté d'experts. Obtenez des réponses immédiates et fiables à vos questions grâce à une communauté d'experts expérimentés sur notre plateforme. Notre plateforme offre une expérience continue pour trouver des réponses fiables grâce à un réseau de professionnels expérimentés.

J’ai besoin d’aide en NSI

Est-ce que quelqu’un peut m’aider a faire un programme svp


Jai Besoin Daide En NSI Estce Que Quelquun Peut Maider A Faire Un Programme Svp class=

Sagot :

Réponse :

Tu peux essaye le code ici c'est en javascript mais tu devrai pouvoir t'en aidé pour le faire en python

au finale j'ai pas fait que du pseudo code :)

https://jsfiddle.net/deiiku/m8tr3y95/

Explications :

https://jsfiddle.net/deiiku/m8tr3y95/

/* get order va récuperer le nom du client et donné la commande ou false si pas possible */

function getOrder(nameCustomer,orderList) {

 let indexCliOrder = nameCustomer.replace("cli","");  

 

// check if le tableau a une longeur suffisante pour récuperer la command  

// je check aussi que la valeur de indexCliOrder est uniquement un nombre entre 0-9 est rien d'autre si

 if (orderList.length < indexCliOrder || indexCliOrder.match(/^[0-9]+$/) == null)

  return false;

   

 return orderList[indexCliOrder];

}

function countTotalPriceOrder(order,listPrice) {

let totalPrice = 0;

 // exemple  order === [10,12,2,5,0,8,9,4,1,10]

 for (let i = 0; i < order.length; i++) {

  let quantityDemand = order[i];

   let price = listPrice[i];

   let priceTotalOneProduct = quantityDemand * price;

   

   totalPrice = totalPrice + priceTotalOneProduct;

 }

 return totalPrice;

}

function removeOrderFromStock(stock,order) {

// le stock est un tableau a key pas d'index il va faloire récuperer les key banene orange ect..

// En python exemple : myDict.keys() # => ["john", "jeff"] nous donne un tableau de toute les key

 for (let i= 0; i < order.length; i++) {

  let quantityProductToWithdraw =  order[i];

   let listKeyStock = Object.keys(stock); //["banane", "orange", "poire", "pamplemousse" ect...]  

  let key = listKeyStock[i]; // key = "banana" par exemple  

 

   stock[key] = stock[key] - quantityProductToWithdraw;

   

 }

 

 return stock;

}

function buy(stock,order,price,nameCustomer) {

let totalPrice = countTotalPriceOrder(order,price);

 console.log(nameCustomer + " doit payer " + totalPrice +"euros");

 

let newStock = removeOrderFromStock(stock,order);// retourne le stock a jour après l'achat du client;

 

 console.log(newStock); //on affiche le stock total comme demandé dans le sujet

 return newStock;

}

let enterStandardValue = "cli1";

let cli = [

  [10,12,2,5,0,8,9,4,1,10],

  [8,1,3,1,0,8,9,4,1,10],

  [1,3,2,5,0,8,9,4,1,10]

];

// if enterStandardValue == cli1  

// alors == cli[0]

//  if enterStandardValue == cli2  

// alors == cli[1] ect..

 

let stock = {"banane":130, "orange" : 1150, "poire" : 85, "pamplemousse" :53, "avocat" : 191, "Poireau":233, "Poivzon" : 145, "chou" : 1100, "celeri" : 164,"fenouil":142 };

let prix = [1.2,1.7,1.75,1.9,3.1,0.7,2.1,1.35,1.8,2.25];

// prix des stock prix[0] = banane , prix[8] = prix du  celerie et prix[1] = orange ect..

let order = getOrder(enterStandardValue,cli);

if (order != false)  

{

stock = buy(stock,order,prix, enterStandardValue);  

 // on change la variable stock avec la nouvelle valeur retourne de buy;

}

Merci de votre visite. Notre objectif est de fournir les réponses les plus précises pour tous vos besoins en information. À bientôt. Nous apprécions votre visite. Notre plateforme est toujours là pour offrir des réponses précises et fiables. Revenez quand vous voulez. Laurentvidal.fr, votre site de référence pour des réponses précises. N'oubliez pas de revenir pour en savoir plus.