code programming

From Python to C++ — and Why the Difference Matters

You already have a working Python program. You are going to write it again in C++, line for line, and reproduce its worst bug on purpose. Along the way you find out why the compiler wants to know the size of the box before you put anything in it, and why the error now arrives before the program has even run.

  • trending_upIntermediate
  • schedule6h 15m
  • menu_book12 lezioni
  • publicEnglish
  • workspace_premiumBasic
From Python to C++ — and Why the Difference Matters

Briefing

This is not a C++ course for people who have never programmed. It is a second language for someone who has a first one, taught entirely by contrast. Python let you write `age = 11` and never asked what `age` was. C++ makes you declare it, and it makes you choose between six kinds of box before you have put anything in one. That is annoying for about two hours and then it is the reason your program runs fast enough to finish inside a four-second limit. The spine of the segment is a port. You take the small question-and-answer script from the Python track — the one that asks your name, asks your favourite food and judges the answer — and you rebuild it in C++ a line at a time. Then you type your answer with a trailing space and it fails in exactly the same way it failed in Python. That is the point of the whole exercise. The trailing space was never a Python bug. It was an input bug, and it followed you. The last module points at USACO Bronze: what a competitive problem actually looks like on paper, how the input arrives, why the array is fixed at a thousand before you have read a single number, and why nearly everyone in that room is writing C++.

Programma del corso · 4 moduli

lockSblocca con l'accesso
  1. 01 The Box Has a Size
    3 lezioni·1h 22m

    Python worked out what you meant. C++ makes you say it in advance, once, and then holds you to it for the rest of the program. Everything in this module is that one trade, examined.

  2. 02 Where the Error Arrives
    3 lezioni·1h 23m

    Python runs a line, then reads the next one. C++ reads the whole file, refuses it if any part of it is wrong, and only then produces something you can run. Nothing you wrote today runs until all of…

  3. 03 The Port
    3 lezioni·1h 55m

    Port it, do not rewrite it. Same order, same questions, same output. If you improve it while you translate it you will not be able to tell which differences are C++ and which are you.

  4. 04 The Shape of a Contest Problem
    3 lezioni·1h 35m

    A contest problem is a contract. Input format, output format, constraints, limits. Read the constraints before you think about the algorithm — they are telling you which algorithm is allowed.

Domande frequenti

Cosa imparerò in From Python to C++ — and Why the Difference Matters?
You already have a working Python program. You are going to write it again in C++, line for line, and reproduce its worst bug on purpose. Along the way you find out why the compiler wants to know the size of the box before you put anything in it, and why the error now arrives before the program has
Ho bisogno di esperienza precedente?
È consigliata una certa conoscenza precedente prima di iniziare From Python to C++ — and Why the Difference Matters.
Quanto tempo richiede From Python to C++ — and Why the Difference Matters?
From Python to C++ — and Why the Difference Matters include 4 moduli e 12 lezioni. Impari al tuo ritmo.
Come accedo?
From Python to C++ — and Why the Difference Matters è incluso in qualsiasi abbonamento a pagamento.

Altro in Programming

Binary, Hex and Data Units
Beginner Binary, Hex and Data Units The topic that costs more marks than any other on the paper, taught by hand. Bits and bytes, binary and hex in all six directions, the 1000-versus-1024 trap, file sizes, transmission times, overflow, two's complement and character sets. Every module ends in a timed drill marked the way an examiner marks it.
Python da zero
Beginner Python da zero La sequenza esatta che nove studenti hanno già percorso, da un file vuoto a un programma che fa domande, controlla le risposte e rifiuta input sbagliati. Nessuna esperienza di programmazione. Nessuna matematica. Lo romperai di proposito, più volte.
First Program — Scratch for ages 5–9
Beginner First Program — Scratch for ages 5–9 Nine Scratch blocks, three sessions of about twenty-five minutes, and one small program a child of five to nine builds themselves. Written for the parent sitting beside them: what to click, what they will get stuck on, what to say when it goes wrong, and when to keep your hands off the mouse.
AI Senza Hype
Beginner AI Senza Hype Cosa sta facendo effettivamente il modello quando ti risponde, perché produce qualcosa che sembra ragionamento, perché inventa citazioni, e il meccanismo di costo che quasi nessuno spiega: una chat rinvia l'intera conversazione a ogni turno. Farai l'aritmetica da solo.
IGCSE e GCSE Computer Science — Teoria che viene effettivamente valutata
Intermediate IGCSE e GCSE Computer Science — Teoria che viene effettivamente valutata La parte di teoria della prova, insegnata affinché sopravviva alla sala d'esame. La gerarchia della memoria e cosa succede effettivamente all'avvio. Compilatori, interpreti e assemblatori, inclusa la risposta che suona giusta e non vale nulla. Database da un foglio di calcolo fino alle chiavi e normalizzazione. DNS e il percorso completo dal premere Invio al visualizzare la pagina. Software di sistema, e la sezione etica e legale che rappresenta i dieci punti più facili della prova.
Programming for the Exam — Python Answers That Score
Intermediate Programming for the Exam — Python Answers That Score The programming half of the paper, taught at exam pitch. Pseudocode translated both ways, because the mark scheme is written in a notation nobody practises. Trace tables done column by column, including the ones with a loop and a condition inside it. Linear and binary search, bubble and insertion sort, what each costs and the comparison questions boards love. Validation against verification, and the boundary test data everybody forgets. Procedures against functions, and a systematic method for finding your own error with four minutes left.