Skip to content

Latest commit

 

History

History
52 lines (30 loc) · 5 KB

README(English).md

File metadata and controls

52 lines (30 loc) · 5 KB

Tasks-P1-SI-CIN-UFPE-2022.2

Tasks for the Programming 1 (P1) course of the Information Systems (SI) undergraduate program at the Center for Informatics (CIn) of the Federal University of Pernambuco (UFPE), a course I took in the second half of 2022 and first half of 2023.

The activities that earned points in the course include the lists in this repository and a final project. Check the project in this other repository: https://github.com/luiz-linkezio/projeto-p1-equipe7

The first task list was the Training List, then List 1, followed by List 2, and so on until List 6.

Note: There was an extra list to help improve the scores of those who didn't achieve the maximum grade in the previous lists, but I managed to get the maximum grade, so I didn't do this extra list. Additionally, there was a final exam list, but I didn't need to take it since I passed by average.

Course Syllabus

Basic concepts of algorithms; basic concepts of programming languages; basic concepts of object-oriented programming and software quality; programming environment; control structures and composite data structures; files; basic concepts of data structures; implementation design.

File Organization

In the Listas directory, there are several folders containing the tasks for each list. Each list has a specific theme, and each folder within each list contains a folder for each task. These task folders contain an .md file showing the question statement and a .py file with the solution to the problem in Python code format, which was done by me.

The symbol ✅ means that I was able to successfully complete the task.

Note: The statements were hosted on the Dikastis platform., and I had to adapt them to represent them in .md files. Additionally, some statements, besides being adapted, have been modified for better reader understanding (modified statements will have a notice indicating that they have been modified.). However, regardless of whether the statement has been adapted or modified, the understanding of the statement will not be compromised. Please note that minor and irrelevant changes will be considered as adaptations, not modifications.

Task Proposal

The tasks in this repository are tasks that should be solved using the Python programming language. These activities aim to introduce students to programming concepts and logic in an introductory manner.

The tasks were hosted on a platform called Dikastis, where students had an account with access to view the problem statements and test the code to solve the problems. The submission and verification of the activities were also done on this platform.

The tasks are in the following format: There is a problem in the statement, and the student must create a Python code that will receive one or more inputs and generate one or more outputs.. The student should place the code on Dikastis on the respective task's page. If the code is approved, the student completes the task and receives its score, the student can try infinite times as long as they are within the deadline.

Extra Information (rules and other details):

  • Students completed one list at a time and had a deadline to submit the activities of each list. The deadline varied depending on the list, but the longest deadline established for the course was 1 month.
  • Each list had a minimum and maximum score from 0 to 10, respectively, and each question was worth the same score. The lists accounted for 70% of the course grade, and the final project accounted for 30%.
  • Students were not allowed to use any content from future lists, meaning it was not permitted to use Tuples (List 6) in the tasks of List 1.
  • Some tasks have their own rules, such as requiring the use of a specific function, for example.
  • Students and tasks were monitored to prevent any copying of answers from other students.
  • The tasks have something called "limite de tempo do código" which is the maximum time the code can take to run completely. Each task has its time limit described in the statement.
  • Some tasks were poorly executed and/or executed incorrectly by the original authors, which is one of the reasons why some statements are different from the originals (and may still contain errors/ambiguities). Additionally, these errors caused some of my codes to have nonsensical and/or incorrect elements just to be accepted on the platform as the correct answer (tasks with these issues will have warnings in the statement and/or in the code).
  • I answered all the tasks correctly within the deadline.

Links:

Dikastis website: https://dikastis.com.br

Official Python website: https://www.python.org

CIn website: https://portal.cin.ufpe.br/

Website of the Information Systems (SI) undergraduate program: https://portal.cin.ufpe.br/graduacao/sistemas-de-informacao/

UFPE website: https://www.ufpe.br/