Programming Fundamentals – Semester 1 (C++)
My complete first-semester collection for Programming Fundamentals – course and lab. Lecture slides, lab manuals, assignments, quizzes, solved exams, reference books, practice code and my final project, organised the same way I used them during the semester.
Live Links
Everything useful in one place – the repository, the downloads and the main folders.
Overview
When I started BS CS my files were scattered across WhatsApp, Google Classroom, my laptop and a couple of USBs. This repository puts the whole Programming Fundamentals semester together – in the same folder layout I used – so anyone taking PF (or me, when revising) can find things quickly.
CS1002 – Programming Fundamentals
35 lectures from “what is a program” to pointers and dynamic memory.
CL1002 – PF Lab
14 lab manuals, the lab quiz and the lab final exam.
Assignments, quizzes & exams
Statements and solutions, Sessional 1 & 2, the final and past papers.
Karachi Stock Market
A console stock market simulator written in plain C++.
Course Lectures 1–35
Open a group to see every file in it. Each file opens on GitHub, where PDFs preview right in the browser.
Lec 01–04Basic Structures
Open folder on GitHub · 45 files
- General Purpose VS Special Purpose.txt
- Lec01 Introduction.pdf
- Lec02 Development&Design of Programs.pdf
- Lec03 Problem Solving, Algorithms & Flow charts.pdf
- Lec04 Starting with basics of C++.pdf
- Linker.txt
- links.txt
- n1.txt
- n2.txt
- n3.txt
- n4.txt
- n5.txt
- n6.txt
- IMG-20221225-WA0002.jpg
- IMG-20221225-WA0004.jpg
- IMG-20230207-WA0007.jpg
- IMG-20230207-WA0008.jpg
- IMG_20230226_155448.jpg
- IMG_20230226_155849.jpg
- IMG_20230227_080430.jpg
- IMG_20230227_081210.jpg
- IMG_20230227_081215.jpg
- IMG_20230227_091404.jpg
- IMG_20230310_152000.jpg
- IMG_20230310_153947.jpg
- IMG_20230310_153950.jpg
- IMG_20230310_155632.jpg
- IMG_20230310_224837.jpg
- IMG_20230310_224944.jpg
- IMG_20230310_224947.jpg
- IMG_20230310_225020.jpg
- IMG_20230313_175621.jpg
- IMG_20230313_191901.jpg
- IMG_20230314_194429.jpg
- IMG_20230314_194513.jpg
- IMG_20230314_194519.jpg
- IMG_20230314_194530.jpg
- IMG_20230314_194531.jpg
- IMG_20230314_194545.jpg
- IMG_20230314_194710.jpg
- PF-Lecture-1.pdf
- PF-Lecture-2_2.pdf
- PF-Lecture-3_2.pdf
- PF-Lecture-4.pdf
- statically typed languages.txt
Lec 05Data Types
Lec 06Input / Output and Operators
Lec 07–08Formatting and Type Casting
Lec 09Relational & Logical Operators
Lec 10–12Control Structures
Lec 13–18Loops & Increment Operator
Open folder on GitHub · 16 files
- Binary Conversion.txt
- for loop.pdf
- Lec13 Repitition statements.pdf
- Lec14 Number Systems.pdf
- Lec15 Memory Map, Addresses and Neg Numbers.pdf
- Lec16_17_ Memory Map, Addresses and Neg Numbers Examples.pdf
- Lec18 Memory Map, Addresses and Neg Numbers Examples.pdf
- nested repetion structure lec3.pdf
- PF-Lecture-13.pdf
- PF-Lecture-14.pdf
- PF-Lecture-15.pdf
- PF-Lecture-16_2.pdf
- PF-Lecture-17.pdf
- PF-Lecture-18_2.pdf
- repetition structures 8.1.pdf
- while.pdf
Lec 19–21Functions
Lec 22–27Arrays
Open folder on GitHub · 11 files
- 10. Character Arrays - C++ Placement Course_2.mp4
- 22. Lecture-Arrays-1.pdf
- 23. Arrays-2 (Parralel Processing).pdf
- 24. Arrays -3 (Serching Sorting).pdf
- 25. Lecture-Functions-3-with-arrays.pdf
- 26. Arrays-5 (Multi-Dimentional arrays).pdf
- 27. Arrays-4 (Character arrays).pdf
- arr_fun.cpp
- arr_size.cpp
- array_function.cpp
- mac.cpp
Lec 28File Handling
Lec 29–31Pointers
Labs 1–14
Weekly lab manuals for the PF lab, plus the lab quiz and lab final.
Assessments
Assignments, home works, quizzes and exams – many with solutions.
11 filesAssignments
17 filesHome Works
11 filesQuizzes
10 filesExams
- Final Course Exam Solution.pdf
- PF Final Fall 22 Solution.pdf
- PF_Past_Papers.zip
- PF_Sessional 1_Solution.pdf
- PF_Sessional_1_Fall2022.pdf
- Sessional I Exam Paper PF Fall 2022 - solution.pdf
- Sessional-1-Solution.pdf
- PF_Sessional2_Solution.pdf
- PF_Sessional_2_Fall2022.pdf
- Sessional-II-Solution Exam Paper Fall 2022 (1).pdf
Final Project – Karachi Stock Market
A console stock market simulator for the Karachi Stock Exchange, written in plain C++ with arrays, functions and file handling.
Live market board
Prices refresh with up/down markers and colours, plus high, low, top advancer, top decliner and total volume.
Personal portfolio
Add money, buy, sell and withdraw, with gain and loss shown in green and red.
Rules and validation
15% daily price cap, invalid symbol and insufficient balance checks.
File handling
Companies load from companies.txt and the portfolio is saved to portfolio.txt.
Books
Reference books used during the semester.
Practice Code
Small programs and dry-run sheets I worked through while learning loops, arrays, strings and functions, plus a small Visual Studio solution kept as it was.
36 filesPractice Codes
- ACFrOgAs-pA5zvFVeS-OMrvE1VNchj-mrOq_Wfe8C2l-EwrObY7ukKD29XFx29-WtlY-n6ZWwySGoHOUPANPDgAEQV9k47VJsR-7xqcmuntC1i5UHlUo-sD9FqCFkXUgXVtCqHOVJfL27tkwcbOT.pdf
- ACFrOgAwuwe_0WDRMmY995kVPy6y3lYB5ffhQTuQ3adt6wmdJRiE815yrbB6gXghfYdjgIeg3wdM8nid4UJjUG-0xUwzfVcBxMhxZe_6ih8f7Ho7vh_G1gNsS-8u6mDorhB_r1XvnxPHpnJBsOga.pdf
- ACFrOgB-kAPnOWahERa2E9t8y-9VYaF4K5upFQlYNMXwAmFsNKNSd40o99b8dAIBMQsesYR2fE6XFVZt5Uxmcl3D7XMjyASByi1-KJgdMQSnuumcLWRoQ3UyfhvG91FXOOcwbrwvncQcaTKpFI8S.pdf
- ACFrOgCEqfJhi9N0CSDZr7me9pyy36kYsC9sTOfICKj6YYxr6TudQKaoq9mssYE7qgl8gwvqonIsj03cxY-HUN7TtXxfqEOH0kPMJLwfbv_Hi65l1mi__Km_hMVGgCWJGj4YTzlgoPxQU7bVbQPl.pdf
- ACFrOgCeQiG5Gu3n8rXvLCQukUxmVyAKvyZ8lzzjz0s_6cfhd-TS8zHmA5gVdn3LHJ2L0xJjmaQyjNBwgnlZ7w5NgAqCabiedzdQdL_S-5ekLi09ru9qy9hH9JPi3AJrrL-LieAjh4GH3LdF3Q42.pdf
- ACFrOgDbnzqIkCLi-0uW1YYyRIDHatB1_4G2-KXIHyuOuU-mUthG-LOe5ge065HP603SwJrW9OAyOxRkaQLzCXbPIwQ-_Y_mrV6yOS9N249-iKFkLcMLml-qoEN9DdYRdskcPRR04apeecP4BwIS.pdf
- count_digits_methods.txt
- Dry Run Questions.pdf
- IMP Link.txt
- Loop Exercise.pdf
- loops dry run practice material.pdf
- Practice 2022.txt
- Practice codes.pdf
- practice question.pdf
- Practice Task for Dry Run.pdf
- calling of function into another function.cpp
- Input_Matrix.cpp
- Largest Number.c++
- mac.cpp
- macintosh.cpp
- pac.cpp
- Phone_Number.cpp
- Second_Largest.txt
- Swapping.c++
- whole_Number.cpp
- FileName.cpp
- mac.cpp
- mac1.cpp
- mac2.cpp
- tas2.cpp
- Task 6.cpp
- task1.cpp
- Task2.cpp
- Task3.cpp
- Task4.cpp
- Task5.cpp
Large Files (Release Downloads)
GitHub doesn’t allow files over 100 MB inside a repository, so these two are attached to the v1.0 – Semester 1 Complete Archive release.
Screenshots
30 snapshots from across the repository. Click any image to enlarge it, and use the arrow keys to move between images.
No screenshots match your search.
Folder Structure
PF_Repository/ ├── Programming Fundamentals Course CS/ │ ├── Assignments/ │ ├── Exams/ │ │ ├── Final Exam Solution (Course)/ │ │ ├── Sessional # 01 Solution/ │ │ ├── Sessional # 02 Solution/ │ │ └── PF_Past_Papers.zip │ ├── Final Project/ │ │ └── KarachiStockMarket_PF/ │ ├── Home_Works/ │ ├── Lecture # 01-04 (Basic Structures)/ │ ├── Lecture # 05 (Data Types)/ │ ├── Lecture # 06 (Input-output and Operators)/ │ ├── Lecture # 07-08 (Type_Casting)/ │ ├── Lecture # 09 (Relational & Logical Operators)/ │ ├── Lecture # 10-12 (Control Structures)/ │ ├── Lecture # 13-18 ( Loops & Increment Operator)/ │ ├── Lecture # 19-21 (Functions)/ │ ├── Lecture # 22-27 (Arrays)/ │ ├── Lecture # 28 (File Handling)/ │ ├── Lecture # 29-31 (Pointers)/ │ ├── Lecture # 32-35 (Number Systems & Memory Mapping)/ │ ├── PF Book/ │ ├── Practice Codes/ │ └── Quizes/ ├── Programming Fundamentals Lab/ │ ├── LAB # 01 … LAB # 14/ │ ├── LAB QUIZ/ │ └── PF LAB FINAL EXAM/ ├── assets/ ├── docs/COURSE_OUTLINE.md ├── index.html ├── LICENSE └── README.md
How to Compile and Run
Any modern C++ compiler works – g++, clang, MSVC, Dev-C++, Code::Blocks or Visual Studio.
Clone the repository
git clone https://github.com/rohaan2802/PF_Repository.gitCompile a practice program with g++
cd "Programming Fundamentals Course CS/Practice Codes/Practice"
g++ -std=c++17 Input_Matrix.cpp -o Input_Matrix
./Input_MatrixFiles ending in .c++
g++ -x c++ Swapping.c++ -o SwappingFinal project (Windows)
cd "Programming Fundamentals Course CS\Final Project\KarachiStockMarket_PF"
build.bat
run.batThe final project uses the Windows console API, so it is meant to run on Windows. In Visual Studio, open Practice Codes/PRCTC/Project1.sln and press Ctrl + F5.
License
The C++ code I wrote (practice codes and the final project) is under the MIT License. Lecture slides, lab manuals, assignments and exam papers belong to their instructors at FAST-NUCES, and the books belong to their authors and publishers. They are shared here only for learning and revision.