how to print the data that we collect using structure and loop
    12 views (last 30 days)
  
       Show older comments
    
function details =  my_details()
x=input('Enter number to details needed to be entered : '); 
for m=1:x
    name=input('name ','s');
    age=input('age ');
    contact_number=input('contact number ');
    details=struct('name',name,'age',age,'contact',contact_number);   
end
end
0 Comments
Answers (2)
  Yongjian Feng
    
 on 1 Jul 2021
        Hello Prateek,
A simple way to print out the struct. Just get rid of the ';' at the end of the line. 
function details =  my_details()
x=input('Enter number to details needed to be entered : '); 
for m=1:x
    name=input('name ','s');
    age=input('age ');
    contact_number=input('contact number ');
    % remove ';' at the end, command line window will print this
    details=struct('name',name,'age',age,'contact',contact_number)
end
end
Thanks,
Yongjian
2 Comments
  Yongjian Feng
    
 on 1 Jul 2021
				Then you need to store the data first into an array of structs.
Once you get all the inputs, iterate the array of structs, and do the same thing here (a line without ';').
  Mili Goyal
 on 1 Jul 2021
        
      Edited: Mili Goyal
 on 1 Jul 2021
  
      I think in the above code, details is storing the last struct. To store all the structs, we can make details as an array of structs and finally print that. The following is the modified code for the above which stores the structs in an array and finally prints them:
CODE
--------------------------------------------------------------------------------------------------------------------------------------------
function details =  my_details()
    details = [];
    x=input('Enter number to details needed to be entered : '); 
    for m=1:x
        name=input('name ','s');
        age=input('age ');
        contact_number=input('contact number ');
        details= [details struct('name',name,'age',age,'contact',contact_number)];   
    end
    for i = 1:length(details)       % print the details
        disp(['The details of entry number ' int2str(i)]);
        disp(['name :' details(i).name]);
        disp(['age :' int2str(details(i).age)]);
        disp(['contact :' int2str(details(i).contact)]);
    end
end
-------------------------------------------------------------------------------------------------------------------------
Hope this helps!
0 Comments
See Also
Categories
				Find more on Matrices and Arrays in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

