0% found this document useful (0 votes)
5 views46 pages

01-Intro To Computer and Programming - A

Uploaded by

Fahmi Faiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views46 pages

01-Intro To Computer and Programming - A

Uploaded by

Fahmi Faiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

Meeting 1

Introduction to Computer
and Programming
Fundamentals of Programming
TKU211131

DTETI FT UGM
Bimo Sunarfri Hantono
[email protected]
LOCALLY ROOTED,
GLOBALLY RESPECTED ugm.ac.id
Survey

http://ugm.id/SurveiProgDasA
Topics
• Introduction to the Course
• Overview of Computers Hardware
• Overview of Computers Software
• Intro to Programming
Introduction to the Course
Lecturer
Survei

• Dr. Bimo Sunarfri Hantono, S.T., M.Eng.

• Dr.Eng. Silmi Fauziati S.T., M.T.

• Dr. Warsun Najib, S.T, M.Sc.


Basic Programming (1)

Required Course: 3 SKS


• 150 minutes/week for lectures
• 150 minutes/week for structured assignments
• 150 minutes/week for independent study
Basic Programming (2)

Student Outcome:
• Basic knowledge and engineering principles
• Development of engineering solutions
• Modern Tools Utilization
Basic Programming (3)

Course Description:
This course will discuss about program development steps, ranging from
defining problem, determining program input & output, and determining
steps by utilizing operator and operands, data types, structure,
programming control. This course also elaborates programming strategies
and modularity.
Basic Programming (4)

Learning Outcome:
1. Students are able to explain the concept of programming
2. Students are able to develop procedural paradigm program
3. Students are able to utilize various data types and basic data structures
to develop the program
4. Students are able to implement modular programming strategies and
choose various programming strategies to get a good, effective, and
efficient program
Basic Programming (5)

Components for Final Grade:


• Assignments ( %)
• Quizzes ( %)
• Midterm Exam (UTS) ( %)
• Final Exam (UAS) ( %)
Learning Topics

1. Intro to programming in general 8. User-defined data types


2. Overview of C/C++ language 9. Modularity
3. Selection 10. Recursion
4. Repetition 11. Class and data abstraction
5. Combination of selection and 12. OOP and UML
repetition 13. Inheritance
6. Fundamental data types
14. Operator overloading
7. Array and array processing
To Pass this Course

• Attend at least 75% of lectures


• a requirement to take the final exam.
• Participate in quizzes, complete assignments, and take exams.
• Pass each defined Learning Outcome (LO).
• All LOs will be evaluated. The final grade for each LO is calculated from
several assessment components.
• Each LO must receive a minimum score of 50 (on a scale of 0-100).
Course Learning Materials

• Go to website eLok UGM


• Navigate to the “Course” menu
• Search for “DTETI-S1-2025-1-Pemrograman
Dasar.”
• Look for the course taught by Bimo Sunarfri
Hantono, Silmi Fauziati, and Warsun Najib
• Enter the course corresponding to your
class.
Overview of Computers
Hardware
Pre-test
Course Learning Materials

Differentiate between
these computers!
What is a Computer?

● A computer is an electronic machine that can


follow instructions to process data into useful
information.

● Works digitally: only understands 0 (OFF) and


1 (ON).

● Used everywhere from supercomputers to


smartphones.
Types of Computers (1)

Type Example Common Use

Supercomputer Frontier, Weather forecast, AI


Fugaku training

Mainframe IBM z16 Banking, large data


transactions
Types of Computers (2)

Type Example Common Use


Personal Laptop, Work, study,
Computer Desktop gaming

Mobile Device Smartphone, Communication,


Tablet apps

Wearables Smartwatch, Fitness,


AR Glasses notifications
Main Hardware Components (1)

Processing Units:
● CPU (Central Processing Unit): General-purpose processor for running
instructions.
● GPU (Graphics Processing Unit): Optimized for graphics rendering and
parallel processing.
● NPU (Neural Processing Unit): Dedicated processor for accelerating AI
and machine learning tasks.
Main Hardware Components (2)

Memory and Storage:


● RAM (Random Access Memory): Temporary storage for active tasks
and programs.
● Storage: Permanent data storage (SSD, HDD, cloud storage).
Main Hardware Components (3)

Input & Output Devices:


• Input Device: For Inputting
Data:
• Keyboard
• Mouse
• Output Device: For Displaying
Results:
• Monitor
• Printer
Interaction of Components in a Computer
Modern Hardware Examples

Smartphones with AI chips. IoT devices like smart home Cloud servers running
sensors. many apps at once.
Overview of Computers
Software
What is Software?

Software = instructions that tell


hardware what to do.

Two main types:


1. System Software – runs the
computer (Operating System).
2. Application Software – helps
users do tasks.
Operating System (OS)

An operating system is software that


controls the interaction between
hardware and the computer user and
manages the allocation of computer
resources. Loading the operating
system into memory is called booting
the computer.
Application Software

• Application software is used for


specific tasks such as word
processing, accounting, or
database management.
• Installing makes the application
available on the computer by
copying it to the computer's hard
drive.
Hardware-Software Interaction
Intro to Programming
Trivia

Punched card: early stage of computer programming


What is Programming?

Programming is the process of turning


ideas into executable instructions.
● Translate real-world problems into data,
rules, and steps “An IT undergraduate
● Choose representations (numbers, text, degree creates dumb
IT workers”
structures)
● Write clear, unambiguous instructions
a computer can follow
Are IT fields irrelevant to today's
https://www.tiktok.com/@timothyronaldarchive/video/
problems? 7503462922249604358?is_from_webapp=1&sender
_device=pc&web_id=7538609496621401607
Do We Still Need to Learn Coding?

“We should stop telling kids to learn code...


Programming language is now human.”
— Jensen Huang, CEO of NVIDIA
Why Learn Programming Today?

● Builds logical & algorithmic thinking

● Enables automation and


problem-solving

● Improves your ability to use and direct


AI tools

● A transferable skill in multiple domains


Our Role in the AI Era

We are no longer just coders, we are:


● Problem Designers — define
problems clearly

● AI Orchestrators — control and


guide AI tools

● Validators — review and test AI


outputs

● Integrators — connect and deploy


solutions
Computational Thinking (CT)

● A problem-solving approach
that uses systematic,
step-by-step methods based
on computation.

● Note: It’s not only for


computer-related problems.
Case: Car Breakdown with Low Fuel

Problem Definition
● Problem: Car stopped in the middle
of the road, fuel almost empty.

● Goal: Get the car running again or


find an alternative safe solution.

● Constraints: Limited time, roadside


condition, tools in the car.
Step 1: Decomposition

Break the problem into smaller parts:


● Secure the car (hazard lights, safety
triangle).
● Check fuel indicator.
● Check battery status.
● Decide which to fix first.
● Test and confirm.
Step 2: Pattern Recognition

Identify common causes:


● Empty fuel tank

● Dead battery

● Loose battery cables

● Overheating
Step 3: Abstraction

Focus on important details, ignore the


rest:
● Relevant: Fuel level, battery status,
spare battery availability.

● Irrelevant: Car color, music,


decorations.
Step 4: Algorithm Design

Create a step-by-step plan:


1. Secure the car.
2. Check fuel and battery.
3. If fuel > 0 and spare battery available
→ Replace battery.
4. Try starting the engine.
a. If successful → Drive to nearest
gas station.
b. If not → Seek assistance.
IPO Diagram (Input – Process – Output)

A tool to clearly define what goes into, what happens inside, and what comes out of a
program.
Structure:
● Input: What data do we need?
● Process: What steps or calculations will we perform?
● Output: What results will we produce?

Example – Car Breakdown Problem


● Input: Fuel level, battery status, spare battery availability
● Process: Check conditions → Replace battery if possible → Attempt to start engine
● Output: Car running again or request for assistance
Algorithm Design: Pseudocode

Definition: A simplified, plain-language description of the steps in an


algorithm, not tied to any programming language.
Algorithm Design: Flowchart (1)
Definition: A diagram that visually represents the steps and decision points
in an algorithm using symbols.
Algorithm Design: Flowchart (2)
Any Question?
Thank You!
See you, next week,
stay safe!

LOCALLY ROOTED, GLOBALLY RESPECTED ugm.ac.id

You might also like