Flowgorithm
Graphical authoring tool with flowcharts

Flowgorithm is a graphical authoring tool which allows users to write and execute programs using flowcharts. The approach is designed to emphasize the algorithm rather than the syntax of a specific programming language. The flowchart can be converted to several major programming languages. Flowgorithm was created at Sacramento State University.
01Origin of name
The name is a portmanteau of "flowchart" and "algorithm".
02Supported programming languages
Flowgorithm can interactively translate flowchart programs into source code written in other programming languages. As the user steps through their flowchart, the related code in the translated program is automatically highlighted. The following programming languages are supported:
03Multilingual support
Flowgorithm supports the following languages:
04Graphical shapes
Flowgorithm combines the classic flowchart symbols and those used by SDL diagrams. The color of each shape is shared by the associated generated code and the console window. The colors can be changed to several built-in themes.
- include <iostream>
using namespace std; // Function to calculate percentage float calculatePercentage(int marks[], int size) {
int sum = 0; for(int i = 0; i < size; i++) { sum += marks[i]; } return (float)sum / size;} // Function to check admission eligibility void checkAdmission(float percentage) {
if(percentage >= 80) { cout << "Admission in Computer Science\n"; } else if(percentage >= 70) { cout << "Admission in Software Engineering\n"; }else if(percentage >= 60) {
cout << "Admission in Information Technology\n"; } else if(percentage >= 50) { cout << "Admission in Business Studies\n"; } else { cout << "Sorry! Not eligible for admission\n"; }} // Function using pointer to display student data void displayStudent(string *name, float *percentage) {
cout << "\n--- Student Result ---\n"; cout << "Name: " << *name << endl; cout << "Percentage: " << *percentage << "%" << endl;} int main() {
int numStudents;cout << "Enter number of students: ";
cin >> numStudents; string names[numStudents]; float percentages[numStudents]; for(int i = 0; i < numStudents; i++) { cout << "\nEnter name of student " << i+1 << ": "; cin >> names[i];int marks[5];
cout << "Enter marks of 5 subjects:\n"; for(int j = 0; j < 5; j++) { cout << "Subject " << j+1 << ": "; cin >> marks[j]; }// Calculate percentage
percentages[i] = calculatePercentage(marks, 5);// Display result using pointers
displayStudent(&names[i], &percentages[i]); // Check admission checkAdmission(percentages[i]); } return 0;}
Sources and credits
This article is adapted from the Wikipedia article “Flowgorithm”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Images, from Wikimedia Commons:
- Flowgorithm Editor.png by DevinCook, CC BY-SA 4.0
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.