Los vectores y las arrays no son los únicos medios que ofrece Octave para recopilar información en una sola entidad. Las estructuras de datos definidas por el usuario también son accesibles y permiten a los ingenieros de software crear tipos de variables que combinan números, strings y arrays.
Una estructura se utiliza para hablar con los datos sobre algo más confuso de lo que puede hacer un solo número, carácter o booleano y más confuso de lo que puede hacer una array de los tipos de datos anteriores. Las estructuras nos brindan un enfoque para «unir» varios tipos de datos bajo una sola variable. Curiosamente, las estructuras nos permiten utilizar representaciones legibles por humanos para nuestra información. A menudo, esta es una mejor manera de utilizar una colección de pantallas o incluso un grupo de teléfonos.
Por ejemplo, hagamos una estructura de datos que contenga la información de un solo estudiante. Almacenaremos el nombre, estado (año y departamento), puntaje semestral (SGPA) y puntaje acumulativo (CGPA).
Código:
% Define a ‘Name’ structure to contain the name details like % first name, last name and middle name by putting ‘.’ operator % which tells Octave to use field in structure. Name.First = 'Tom'; Name.MI = 'Matthew'; Name.Last = 'Curran'; Student.Name = Name; Student.Status = 'Entc Grad'; % To view the contents of the structure Student Student.Name % Operate on the elements of structure. Student.SGPA = 9; Student.CGPA = 8.80; Student Student.Name.First = 'Yo'; Student.CGPA = 8.76; Student Student.Name % To create arrays of structures. number_students = 5; for i = 1 : number_students Class(i) = Student; end Class Class(2) Class(2).Name % Function declaration function message = pass_or_fail(Student) Exam_avg = mean(Student.CGPA); if(Exam_avg >= 7) message = 'You pass!'; else message = 'You fail!'; end return; end % Calling ‘pass_or_fail’ function message = pass_or_fail(Class(2)); message
Producción:
Student = scalar structure containing the fields: Name = scalar structure containing the fields: First = Tom MI = Matthew Last = Curran Status = Entc Grad ans = scalar structure containing the fields: First = Tom MI = Matthew Last = Curran Student = scalar structure containing the fields: Name = scalar structure containing the fields: First = Tom MI = Matthew Last = Curran Status = Entc Grad SGPA = 9 CGPA = 8.8000 Student = scalar structure containing the fields: Name = scalar structure containing the fields: First = Yo MI = Matthew Last = Curran Status = Entc Grad SGPA = 9 CGPA = 8.7600 ans = scalar structure containing the fields: First = Yo MI = Matthew Last = Curran Class = 1x5 struct array containing the fields: Name Status SGPA CGPA ans = scalar structure containing the fields: Name = scalar structure containing the fields: First = Yo MI = Matthew Last = Curran Status = Entc Grad SGPA = 9 CGPA = 8.7600 ans = scalar structure containing the fields: First = Yo MI = Matthew Last = Curran message = You pass!
Publicación traducida automáticamente
Artículo escrito por sourabhnaikssj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA