2017-10-05 8 views
0

Je souhaite afficher tous les clients ayant acheté un article au cours d'une journée spécifique. Serait-ce fait en utilisant le tableau de clients avec les instructions if/else ou en utilisant le jour enum? Toute aide ou un exemple serait génial, merci!Pascal - Comment est-ce que je renvoie des valeurs basées sur une condition?

type 
day = (monday, tuesday); 

Tcustomer = record 
    name:String; 
    itemPurchased:string; 
    dayPurchased: Tday; 
end; 

TCustomers = array of Tcustomer; 

function readDay(prompt:string): day; 
var 
    selection:Integer; 
begin 
    writeln('1. Monday'); 
    writeln('2. Tuesday'); 

    selection := ReadIntegerRange('Select day purcased (1 - 3): ', 1, 
    3); 
    result := day(selection-1); 
end; 

function readCustomers(prompt:string):TCustomers; 
var 
    numOfCustomers:integer; 
    i:integer; 
begin 
    numOfCustomers := ReadInteger('Enter number of customers: '); 
    setLength(result, numOfCustomers); 

    for i := 0 to high(result)do 
    begin 
     result[i].name := ReadString('Customer name: '); 
     result[i].itemPurchased := ReadString('Item Purchased: '); 
     result[i].dayPurchased := readDay(prompt); 
    end; 
end; 
+0

* ... en utilisant le tableau de clients avec if/else stat ou en utilisant le jour enum *. Je suppose que la réponse est les deux? Je ne sais pas pourquoi vous pensez que ce sont des alternatives les uns des autres. Vous devez vérifier chaque entrée du client pour la valeur enum souhaitée. – lurker

Répondre

1

Vous devez:

définissent Customers variables
get tableau clients dans ce
créer la procédure avec specific_day arguments
dans cette procédure font une boucle et vérifier tous les éléments du tableau avec l'opérateur if- qui compare dayPurchased champ avec specific_day