• Welcome to your new Gnomio site

    Now, you are in control!

    Moodle is an open-source Learning Management System (LMS) that provides educators with the tools and features to create and manage online courses. It allows educators to organize course materials, create quizzes and assignments, host discussion forums, and track student progress. Moodle is highly flexible and can be customized to meet the specific needs of different institutions and learning environments.

    Moodle supports both synchronous and asynchronous learning environments, enabling educators to host live webinars, video conferences, and chat sessions, as well as providing a variety of tools that support self-paced learning, including videos, interactive quizzes, and discussion forums. The platform also integrates with other tools and systems, such as Google Apps and plagiarism detection software, to provide a seamless learning experience.

    Moodle is widely used in educational institutions, including universities, K-12 schools, and corporate training programs. It is well-suited to online and blended learning environments and distance education programs. Additionally, Moodle's accessibility features make it a popular choice for learners with disabilities, ensuring that courses are inclusive and accessible to all learners.

    The Moodle community is an active group of users, developers, and educators who contribute to the platform's development and improvement. The community provides support, resources, and documentation for users, as well as a forum for sharing ideas and best practices. Moodle releases regular updates and improvements, ensuring that the platform remains up-to-date with the latest technologies and best practices.

    Links of interest:

    (You can edit or remove this text)

Available courses

Course Description

This course introduces structured programming, a disciplined approach to writing clear, reliable, and maintainable programs. Students learn to design programs using well-defined control structures, modular decomposition, and step-by-step problem solving—avoiding unstructured constructs like arbitrary jumps (goto).


Course Objectives

By the end of the course, students will be able to:

  • Analyze problems and design structured solutions

  • Write programs using sequence, selection, and iteration

  • Decompose problems into functions or procedures

  • Apply good coding style and documentation practices

  • Debug and test programs systematically


Key Topics Covered

  1. Introduction to Programming Concepts

    • Algorithms and problem-solving

    • Program design vs. coding

    • Pseudocode and flowcharts

  2. Principles of Structured Programming

    • Top-down design

    • Single-entry, single-exit control structures

    • Modularity and abstraction

  3. Control Structures

    • Sequence

    • Selection (if, if–else, switch/case)

    • Iteration (for, while, do–while)

  4. Functions and Procedures

    • Function definitions and calls

    • Parameters and return values

    • Scope and lifetime of variables

  5. Data Types and Variables

    • Primitive data types

    • Constants and variables

    • Type casting and expressions

  6. Arrays and Basic Data Structures

    • One-dimensional and multidimensional arrays

    • Common array operations

  7. Input, Output, and File Handling

    • Standard input/output

    • Basic file operations (if applicable)

  8. Debugging and Testing

    • Syntax vs. logical errors

    • Testing strategies

    • Code tracing and dry runs

  9. Coding Standards and Documentation

    • Readable code formatting

    • Comments and naming conventions