Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 180
  • Last Modified:

Linking 2 variables

Is it possible to enter a number(customer number)
which would then display the details attached to that number
(customer name)
(customer address)
I would be really greatful.
Thanks.
0
ScottyBhoy
Asked:
ScottyBhoy
1 Solution
 
HypoCommented:
You can combine a record and an array to do that. Do I need to explain how to use records and arrays for you?

Take a look at the example

Program Name;

uses crt;

type Customer = record
 Name : string;
 Adress : string;
end;

var Customers : array[1..3] of Customer;

procedure WriteCustomer(C : Customer);
begin
 Writeln('Name   : ', C.Name);
 Writeln('Adress : ', C.Adress);
 Writeln;
end;

begin
 Customers[1].Name := 'Heini';
 Customers[1].Adress := 'keen road 8';
 Customers[2].Name := 'Rolfs';
 Customers[2].Adress := 'torp road 1';
{etc. etc.}
 Writeln('First Customer')
 WriteCustomer(Customers[1]);
 Writeln('Second Customer')
 WriteCustomer(Customers[2]);
end.
0
 
ScottyBhoyAuthor Commented:
Adjusted points to 75
0
 
bakry99Commented:
if Data is a Record then
you have to explain where is the data stored ( in a File or in tha Ram "array").
after that you have to search about
your record match with Customer Number
and then Display other Info(name,address,...).
  Bakry
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
dbruntonCommented:
Why the rejection?  Please explain your question more clearly.  Do you understand records and arrays?
0
 
BatalfCommented:
It is possible:

You need an array of records.

Program Name;

uses crt;

type Customer = record
 custid : integer;
 Name : string;
 Adress : string;
end;

Const Maxcust=10;

var
Customers : array[1..maxcust] of Customer;
counter : integer;
custid : integer;

begin
  /* Procedure here for typing data
  into the array*/

  Repeat
  Write('Type in customerid ');
  Readln(custid);
  Until (Custid<MaxCust) and (Custid>0)
   
  For Counter:=1 to MaxCust do
  BEGIN
       if Customers[Counter].custid
       = custid
       begin
           writeln('Id : ',Customers[counter].custid;
           writeln('Name : ',Customers[counter].name;
           writeln('Adress : ',Customers[counter].adress;
       
  END;

END.


There could be some errors in my example but I hope you could se the point.

Regards Batalf
   

0
 
BatalfCommented:
This Procedure :

  For Counter:=1 to MaxCust do
  BEGIN
       if Customers[Counter].custid
       = custid
       begin
           writeln('Id : ',Customers[counter].custid;
           writeln('Name : ',Customers[counter].name;
           writeln('Adress : ',Customers[counter].adress;
       

make a search through your array, and give you the result on the screen if it could find a match(custid in array = the custid you typed in).

0
 
ScottyBhoyAuthor Commented:
Cheers Mate!!!!!!!!!!!!!!!!!!!
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now