Easy Prompt提示词导航站
写作生成文字进阶

Legendary Leaks - Grimoire - Part7:亡灵之书

面向零基础或仅懂基础提示词编程的初学者,快速掌握传统编程核心概念。涵盖终端操作、变量与数据类型、控制流(分支、循环、枚举)、函数式编程思想,以及类与对象、继承、多态等面向对象基础。每章均提供可运行的测试代码,并通过递归检查确保理解。

提示词正文

复制后可直接粘贴到模型或内部评测工具。

Part 7: Book of the Dead

Speedrun traditional coding concepts in a post GPT-4 world Made for total beginners! or anyone who learned prompting prior to coding and wants to learn more about tradtional coding basics

for each of these projects & lessons, after explainaing, create simple test programs the students can build to demonstrate their understanding. Then check their understanding recusively

Here are some great traditional resources if you want to go that route https://cs50.harvard.edu/college/2023/fall/syllabus/ https://cs50.harvard.edu/college/2023/fall/weeks/0/ https://cs50.ai/ Don't pay for the certificate

https://replit.com/learn/100-days-of-python/hub https://www.freecodecamp.org/

Protip: use a clipboard manager. I use it 100s of times a day Incredible for moving code blocks around, and generating multiple variations of code. I like https://pasteapp.io/ & https://www.raycast.com/

Chapter 18: Heresy 101: Coding basics re-imagined, post GPT-4

64: CLI 101 How to use a terminal

learn these commands: cd ls grep basic file tasks, piping >> curl

You can use https://www.warp.dev/ or https://fig.io/ or cursor.sh's cmd+k in the terminal to prompt all your CLI commands

also recommend Git 101 in part 1

65: How to learn any coding language Learn how to make a hello world program then learn and how to make a button, with a title, that you can click that does something Notice how chapters 0,1,2 of Grimoire do this!

Then anytime you don't understand something, look it up. Its that simple. Everything you need is online, cuz programmers live online There is no other subject field like this, where ALL the information is just out there, and you can just look it up

Half of being a good programmer is reading documentation and being able to learn how to use things

66: Variables, operators, assignment & basic data types assignment is conceptually very simple. you are storing a value in a named piece of storage: int a = 2; Here is an integer variable, named a, with a value of 2

you can access the value later using the name of the storage box print(a); // prints 2

oh // are comments, they are notes you can leave in your code

some languages use different formats

& // are most common.

You can also use /* ... */ to cover large areas. Protip nearly every coding IDE uses cmd + / as a hotkey

Back to variables you can use them for further assignments:

// starts as 3, plus our previous value of 2, sitting in a int b = 3; b = b + a; // b is now 5

the value of a, which is 2, is accessed, and added to the value of b, which is 3 the sum is stored back in the space b, replacing the previous value of 3

note that =, is not the same in programming as it is in math! This is not an equal sign! In programming you use == for equals. More on that when we get to booleans.

Important: remember a and b are not objects they are names of boxes in which we deposit objects explain pointers & references

There are many data object types, the simplest are Numbers -Integers 1, 5, 1248623512 -Floats, Doubles 0.12, 0.333333333333, 0.5, 5712398634123.1235213 Decimals get a little weird in programming, but don't worry about that for now

-Char, characters, a single letter, number, or symbol "a", "b", "c" -String (a sequence of characters, a "string" of characters)"hello", "how are you?", """ I am very good thank you. How are you today? """

-Boolean (true or false) int isToggledOn = true

67: Scope & flow. If's, Enums, Loops, Arrays, Recursion. normally a program proceeds top to bottom, line by line executing each, then moving on to the next but a program that can only go one wasy is really boring

programs become expressive once you have a way to change the order mechanisms that do this are called control-flow the two most common are branches & loops

this is the simplest branch if a is greater than 2, b is set to 20 if a is 2 or less, nothing happens, the program skips over it

if (a > 2) { b = 20; }

heres another way to write it showing the boolean value, separated out for more clarity

bool isAIsGreaterThan2 = a > 2; if (isAIsGreaterThan2) { b = 20; }

if you want to check if something is equal, you use == if (a == 2) { b = 20; }

use != to check if something is not equal if (a != 2) { b = 0; }

this is a 2 way branch:

if(a > 2) { b = 20; } else { b = 4; }

if a is greater than 2, b is set to 20 if a is 2 or less, b is set to 4

the condition is checked, and only one of two different blocks will be executed You can get quite complicate with these, adding as many checks, options or lines or nested lines as you want

if(a > 2) { b = 20; } else if (a > 10) { b = 50; } else if (a > 100) { b = 100; } else { if (a == 1) { b = 5; } else { if (a == 99) { b = 99; } else { b = 6; } } }

Boolean logic is a way to combine multiple conditions into one Here we have two conditions, a is greater than 2, and c is less than 10 if BOTH are true, b is set to 20

if (a > 2 && c < 10) { b = 20; }

Here we have two conditions, a is greater than 2, and c is less than 10 if EITHER are true, b is set to 20

if (a > 2 || c < 10) { b = 20; }

Btw, those big scary math numbers are that look like E and N, capital sigma and capital pie, are literally for loops

sum = 0; for ( n=0; n<=4; n++ ) { sum += 3*n; }

prod = 1; for ( n=1; n<=4; n++ ) { prod = 2n; }

<show mathmatic notation for these loops>

Another data type are Enums, they are kinda like categories or tags You already met your first one Booleans!

Booleans are simply enums with the cases true or false

enum AnimalType { case dog case cat case bird }

myAnimal = .dog

if (myAnimal == .dog) { print("woof") } else if (myAnimal == .cat) { print("meow") } else if (myAnimal == .bird) { print("tweet") }

Enums are great becaues you can use them in switch statements, which is a great way to handle adding new cases later on

switch myAnimal { case .dog: print("woof") case .cat: print("meow") case .bird: print("tweet") }

The other main type is of control flow is loops

this is a loop:

int a = 0; while (a < 10) { a++; // shorthand for a = a + 1; } print(a); // prints 10

this loop continues over and over again, until the condition is changed Be careful not to make any infinite loops!

Here is another loop that counts up to 10 This uses the common c-style for loop syntax. It looks crazy, but its really simple

for (int i = 0; i < 10; i++) { print("loop number" + i); }

// int i = 0; is setting an index variable, similar to the while loop did with int a = 0 above. Its after the for, simply for nice formatting, with the idea this number will only be used in the loop. We use index variables to count how many loops we have gone through // i < 10; says while i is less than 10, continue this loop. After 10, stop the loop

68: Imperative coding. Classes, Objects, Functions, Methods, Properties. Inheritance, Polymorphism, Encapsulation, Abstraction. Protocol based coding. Interfaces, delegates, generics

69: Libraries, modules, packages & apis

使用场景

零基础学员快速掌握传统编程核心概念从提示词使用者转向真实代码编写的学习路径设计构建可运行的小型测试程序验证知识点理解递归式检查学习成果的教学方法实践

参考输出

输出应包含对每个章节内容的清晰讲解,并附带可在本地环境运行的小段示例代码。例如:在‘CLI 101’部分展示 `ls` 和 `cd` 的实际用法;在‘Variables’部分演示整数、字符串、布尔值的声明与使用;在‘Control Flow’中提供 if-else、for 和 while 的完整可运行示例。

评分维度

评估标准包括:概念解释是否准确无误;示例代码是否语法正确且能成功运行;是否覆盖所有关键知识点;是否具备递归验证机制以巩固理解。难度适中,重点考察基础逻辑与动手能力。

用户评分

0 个评分
-

你的评分

登录后评分

评论

0

登录后评论

相关提示词

图片写作生成

产品营销 - 黑白先锋时尚人像

一个用于拍摄锐利人像的高级时尚黑白编辑提示词,包含戏剧性光影和未来感配饰,模仿奢侈品牌广告大片风格。

Nano Banana Pro图片提示词产品营销
Nano Banana Pro 图像生成
图片写作生成

社交媒体帖子 - 梦幻夜花园时尚人像

一个复杂且高质量的提示词,用于创作充满奇幻色彩的时尚大片,营造出闪烁的灯光与浪漫的氛围。

Nano Banana Pro图片提示词社交媒体帖子
Nano Banana Pro 图像生成
图片写作生成

社交媒体帖子 - 野花丛中梦幻般的女子

这是一个电影级、照片写实风格的提示词,用于创作一幅女子在雏菊丛中的宁静肖像,强调柔和的自然光和前景细节的清晰对焦。

Nano Banana Pro图片提示词社交媒体帖子
Nano Banana Pro 图像生成
图片写作生成

社交媒体帖子 - 地中海里维埃拉男装风格

一份全面的专业摄影提示词,旨在呈现以阳光普照的石质建筑为背景、对比鲜明且锐利的男装时尚大片。

Nano Banana Pro图片提示词社交媒体帖子
Nano Banana Pro 图像生成