Every voice deserves a page
Every young person has something to say.
Students in grades 1–12 send us stories, poems, comics, code, and art from all over the world. Our editors read every submission and publish original work that passes review.
Fresh off the press ✦
Read the whole magazine →
art8th grade
Golden Night
by Leo Hart

art6th grade
Sunny days
by Calliope Reed
God bless all men, White or Black. When the two lights follow, you shall not be lost; this story is history. This bunny was there in the story of the lazy farmer. This bunny was here all along. It might have just been made, but it was made from the paper that watched you.
writing4th grade
The Little Bunny Who Will Watch Over You
by Titi
#include <iostream>
using namespace std;
void helloWorld(long long howMany) {
for (long long i=0; i<howMany; i++) {
cout << "Hello World!\n";
}
}
int main() {
long long numToTransfer;
cin >> numToTransfer;
helloWorld(numToTransfer);
return 0;
}coding8th grade
thy hello world, now overcomplicated-ish.
by Luffy
#include <bits/stdc++.h>
using namespace std;
vector<int> countfreqency(string letter) {
vector<int> freqency(26);
for (char c : letter) {
freqency[c - 'a']++;
}
return freqency;
}
int main() {
int N; cin >> N;
vector<pair<string, string>> words;
for (int i = 0; i < N; ++i) {
string wordone;
string wordtwo;
cin >> wordone >> wordtwo;
words.push_back({wordone, wordtwo});
}
vector<int> mxb(26);
for (int j = 0; j < N; ++j) {
vector<int> freqencyone = countfreqency(words[j].first);
vector<int> freqencytwo = countfreqency(words[j].second);
for (int k = 0; k < 26; k++) {
mxb[k] += max(freqencyone[k], freqencytwo[k]);
}
}
for (int a = 0; a < 26; ++a) {
cout << mxb[a] << "\n";
}
}coding6th grade
USACO Block Game
by Ethan
#include <iostream>
#include <string>
#include <cmath>
#include <thread>
#include <chrono>
#include <type_traits>
using namespace std;
using namespace chrono;
template <typename T>
void actualThing() {
string op = "";
bool go = true;
string gointp;
T int1, int2;
while (go==true) {
if (go==false) {
break;
}
cout << "What's your first number?\n";
cin >> int1;
if (cin.fail()) {
cout << ">>>An internal error (I&FE-4 (1stLTRINT)) has occurred. Please try again.\n";
return;
}
if (is_same<T, double>::value && (int1>1e150||int1<-1e150)) {
cout << "You serious? That number's too far from 0. Please rerun the program and choose another, smaller number";
return;
}
cout << "What is your operator sign?\nOptions: ADD, SUB, MULT, DIV\n";
cin >> op;
cout << "What's your second number?\n";
cin >> int2;
if (cin.fail()) {
cout << ">>>An internal error (I&FE-3 (2ndLTRINT)) has occurred. Please try again.\n";
return;
}
if (is_same<T, double>::value && (int2>1e150||int2<-1e150)) {
cout << "You serious? That number's too far from 0. Please rerun the program and choose another, smaller number";
return;
}
if (op=="ADD") {
cout << int1+int2 << " <<answer\n";
} else if (op=="SUB") {
cout << int1-int2 << " <<answer\n";
} else if (op=="MULT") {
cout << int1*int2 << " <<answer\n";
} else if (op=="DIV"&&int2==0) {
cout << "UNDEFINED (detected ?/0) <<answer\n";
} else if (op=="DIV"&&int2!=0) {
cout << int1/int2 << " <<answer\n";
} else {
cout << ">>>An internal error (I&FE-1 (OPRERR)) has occurred. Please try again.\n";
return;
}
cout << "Make a new calculation? (Y/N)\n";
cin >> gointp;
if (gointp=="Y") {
go=true;
} else if (gointp=="N") {
go=false;
} else {
cout << ">>>An internal error (I&FE-2 (CNTRQT)) has occurred. Please try again.\n";
return;
}
}
}
int main() {
cout << "Loading files." << flush;
this_thread::sleep_for(milliseconds(320));
cout << "." << flush;
this_thread::sleep_for(milliseconds(1270));
cout << ".\n" << flush;
cout << "Loading processing packages...\n" << flush;
this_thread::sleep_for(milliseconds(672));
char PILDC;
cout << "PRELOAD INSERT: [L]ongs (up to ~9.2e18) OR [D]oubles (up to ~1e150)?\n";
cin >> PILDC;
cout << "Rechecking preinstalled packages and beginning program startup...\n" << flush;
this_thread::sleep_for(milliseconds(195));
system("clear");
cout << endl << "*/ / / / / / / / / / / / / / / / / / / / /*\nNOTE:\nSome errors has been found and marked by the creator as I&FEs, short for Internal&FoundErrors.";
cout << "\nIf that happens, the program will most likely stop by itself OR execute a specialized function to fix the bug\n*/ / / / / / / / / / / / / / / / / / / / /*\n\n";
if (PILDC=='L') {
actualThing<long long>();
} else {
actualThing<double>();
}
return 0;
}coding8th grade
the terminal calculator
by Luffy