Notes, summaries, assignments, exams, and exercises for Computer science for University

Database Application Lifecycle: Stages and Key Considerations

Computer science3.73 KB

The stages of the database application lifecycle are:

  1. Planning: System and project planning.
  2. Definition: Defining the scope and limits of the database implementation and its interactions with other systems.
  3. Requirements: Collection and analysis of requirements from various sources.
  4. Database Design: Conceptual, logical, and physical database design.
  5. DBMS Selection: Choosing the appropriate Database Management System (DBMS).
  6. Application Design: Designing the application programs that will use and process the database.
  7. Prototyping: Building prototypes of the application for testing and feedback (optional).
  8. Implementation: Creating the database definitions and application programs.
  9. Conversion and Loading: Converting and loading data from an old system to
...
Continue reading "Database Application Lifecycle: Stages and Key Considerations" »

Software Types, Computer Uses, and IT in Special Education

Computer science3.39 KB

Software Classification

We can classify software into three types:

  • Operating Systems: Manage computer resources.
  • Programming Languages: Used to build applications (e.g., Java, C++, Assembly).
  • Applications and Programs: Perform specific operations.

Programming Languages

What are Programming Languages?

Programming languages are established systems of communication understood by both programmers and machines, used to develop programs. They are constantly evolving, with many based on English, but increasingly visual and intuitive.

Word Processors

What is a Word Processor?

Word processors offer more than just writing; they allow for the inclusion of photos and drawings, text justification and formatting, spell checking, and integration with other applications....

Continue reading "Software Types, Computer Uses, and IT in Special Education" »

SQL DDL: Database Modification and Advanced Features

Computer science2.48 KB

Advanced Features

Advanced features facilitate consultation similar to a spreadsheet because they work based on rows and columns.

  • COUNT(): Count the number of rows in the column set
  • MIN(): Find the minimum value of the column set
  • MAX(): Find the maximum value of the column set
  • AVG(): Gets the average values in the column set
  • SUM(): Gets the total value implied by the values obtained in the column provided

Modifying the Database

SQL DDL has modules for the definition of data that allows us to create or modify table structure.

The instructions for these operations are:

  • CREATE TABLE: Allows you to create an empty data table.
  • INSERT: Allows you to store records in a table created.
  • UPDATE: You can modify data records stored in the table.
  • DELETE: Deletes a record
...
Continue reading "SQL DDL: Database Modification and Advanced Features" »

Advanced Computer Graphics Algorithms and Curve Modeling

Computer science12.06 KB

Parametric Representation of Cubic Curves

Curves are widely used in Computer Graphics for designing smooth shapes, objects, fonts, and animations. A curve can be represented in different ways, and one of the most important methods is the Parametric Representation. In this method, the coordinates of points on the curve are expressed as functions of a parameter t. A Cubic Curve is a curve represented by a third-degree polynomial equation. Parametric representation provides greater flexibility and control over the shape of the curve and is widely used in CAD/CAM systems, animation, and graphical modeling.

Parametric Representation Details

In parametric form, both x and y coordinates are represented as functions of a parameter t:

x = x(t)
y = y(t)

For...

Continue reading "Advanced Computer Graphics Algorithms and Curve Modeling" »

Data Structures Defined: Classification and Examples

Computer science2.82 KB

What is a Data Structure?

A data structure is a specialized format for organizing, processing, retrieving, and storing data. It enables efficient access and modification of data, making it a fundamental concept in computer science and programming. Data structures are essential for managing large amounts of data, supporting various operations such as searching, sorting, insertion, deletion, and traversal.

Classification of Data Structures

Data structures can be broadly classified into two categories: primitive and non-primitive.

1. Primitive Data Structures

These are the basic data types provided by programming languages. They serve as the building blocks for more complex data structures. Examples include:

  • Integer
  • Float
  • Character
  • Boolean

2. Non-Primitive

...
Continue reading "Data Structures Defined: Classification and Examples" »

Understanding Algorithms: Characteristics and Examples

Computer science2.84 KB

What Is an Algorithm?

An algorithm is a finite sequence of well-defined instructions designed to solve a specific problem or perform a computation. Algorithms are the foundation of computer programming and data processing. In the context of data structures, algorithms are used to manipulate and manage data efficiently, such as searching, sorting, inserting, or deleting elements.

Characteristics of an Algorithm

  • Finiteness: The algorithm must always terminate after a finite number of steps. It should not run indefinitely.
  • Definiteness: Each step of the algorithm must be precisely and unambiguously defined. There should be no confusion about what needs to be done at any step.
  • Input: An algorithm should have zero or more inputs, which are externally
...
Continue reading "Understanding Algorithms: Characteristics and Examples" »

Data Structures: Queues, Trees, Graphs, and Searching Algorithms

Computer science497.48 KB

Understanding Data Structures and Algorithms

8. Queues: FIFO Operations

A queue is a linear data structure that follows the First-In, First-Out (FIFO) principle. The element inserted first will be removed first, similar to people waiting in a line. It has two primary operations:

  • enqueue(): Adds an element to the rear of the queue.
  • dequeue(): Removes an element from the front of the queue.

Enqueue Operation Algorithm (Array-based):

  1. Check if the queue is full (rear == size - 1).
  2. If not full, increment rear.
  3. Insert the new element at queue[rear].

Example:

if (rear == size - 1)
    printf("Queue Overflow");
else {
    rear++;
    queue[rear] = value;
}

Dequeue Operation Algorithm:

  1. Check if the queue is empty (front > rear).
  2. If not empty, retrieve the element
...
Continue reading "Data Structures: Queues, Trees, Graphs, and Searching Algorithms" »

Core Concepts in AI, Machine Learning, and Industrial Automation Systems

Computer science422.57 KB

Linear Regression Fundamentals

In regression, a set of records containing X and Y values is used to learn a function. This learned function can then be used to predict Y from an unknown X. In regression, we aim to find the value of Y, so a function is required which predicts Y given X. Y is continuous in the case of regression.

Here, Y is called the criterion variable and X is called the predictor variable. There are many types of functions or models which can be used for regression. The linear function is the simplest type of function. Here, X may be a single feature or multiple features representing the problem.

P37C38P9ECJqqvMXffAAAAAElFTkSuQmCC

Applications of Linear Regression in AI

  • Predictive Analysis: Forecasting sales, stock prices, or house prices based on historical data.
...
Continue reading "Core Concepts in AI, Machine Learning, and Industrial Automation Systems" »

React Hooks & Redux: Essential Concepts for Developers

Computer science10.31 KB

React Hooks and Essential Libraries

useState Hook

Purpose

Purpose: Adds state to functional components.

Import

import { useState } from 'react';

Syntax

const [state, setState] = useState(initialValue);

Update Methods

  • setState(newValue);
  • setState(prevState => ...); (for updates based on previous state)

Example

import React, { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>Increment</button>
    </div>
  );
}

useEffect Hook

Purpose

Purpose: Performs side effects such as data fetching, subscriptions, or direct DOM manipulations.

Import

import { useEffect } from 'react';

Syntax

useEffect(
...
Continue reading "React Hooks & Redux: Essential Concepts for Developers" »

Discrete Mathematics Foundations: Sets, Logic, Graphs, and Proofs

Computer science880.48 KB

Speaking Mathematically: Core Concepts

The Language of Sets

  • ∀ - Universal quantifier (true for all values of a variable in a set)
  • ∃ - Existential quantifier (true for at least one value of a variable in a set)

Common Set Notations:

  • R - Set of all real numbers
  • Z - Set of all integers
  • Q - Set of all rational numbers
  • N - Set of all positive integers
  • (X)+- - Positive/negative elements for a specific set X

x ∈ S means that x is an element of the set S.

  • Example: x=5, S={1, 2, 3, 4, 5}

A ⊆ B means that A is a subset of the set B.

  • Example: A={a,b}, B={a,b,c}
  • Example: {2} ∈ {1, 2, 3} is false; {2} ∈ {{1}, {2}} is true; 2 ⊆ {1, 2, 3} is false; {2} ⊆ {1, 2, 3} is true
  • Note: {9, 9, 1, 1, 7, 7} has only 3 distinct elements ({1, 7, 9}); {1, {2}} has 2 elements;
...
Continue reading "Discrete Mathematics Foundations: Sets, Logic, Graphs, and Proofs" »