Skip to content

Instantly share code, notes, and snippets.

@jacobaraujo7
Created April 4, 2019 23:33
Show Gist options
  • Save jacobaraujo7/939320b7589a7f2a25d18c5290ecc0e7 to your computer and use it in GitHub Desktop.
Save jacobaraujo7/939320b7589a7f2a25d18c5290ecc0e7 to your computer and use it in GitHub Desktop.
carrinho_compras.dart
import "dart:io";
List<String> produtos = [];
main() {
bool condicao = true;
while (condicao) {
print("==== ADICIONE UM PRODUTO ====");
String text = stdin.readLineSync();
if (text == "sair") {
print("==== TERMINOU O PROGRAMA ====");
condicao = false;
} else if (text == "imprimir") {
imprimir();
} else if (text == "remover") {
remover();
} else {
produtos.add(text);
print("\x1B[2J\x1B[0;0H");
}
}
}
imprimir() {
for (var i = 0; i < produtos.length; i++) {
print("ITEM $i - ${produtos[i]}");
}
}
remover() {
print("==== qual item deseja remover?");
imprimir();
int item = int.parse(stdin.readLineSync());
produtos.removeAt(item);
print("==== ITEM REMOVIDO");
}
@peagape
Copy link

peagape commented Feb 14, 2020

Fala jacob, dps da uma olhadinha como ficou o meu, Abs parabéns pelo curso!

https://gist.github.com/peagape/65cb2c6827d883ea5e3bf8a0c184f9d3

@alandgmendes
Copy link

#esse código deu erro pra mim, tive que fazer as seguintes alterações:

import "dart:io";

List produtos = [];

main() {
bool condicao = true;
while (condicao) {
print("==== ADICIONE UM PRODUTO ====");
String? text = stdin.readLineSync()!; //adicionar ? depois de String, e
//notnull no readLineSync
if (text == "sair") {
print("==== TERMINOU O PROGRAMA ====");
condicao = false;
} else if (text == "imprimir") {
imprimir();
} else if (text == "remover") {
remover();
} else {
produtos.add(text);
print("\x1B[2J\x1B[0;0H");
}
}
}

imprimir() {
for (var i = 0; i < produtos.length; i++) {
print("ITEM $i - ${produtos[i]}");
}
}

remover() {
print("==== qual item deseja remover?");
imprimir();
int item = int.parse(stdin.readLineSync()!); // notnull adicionado no
//readLineSync
produtos.removeAt(item);
print("==== ITEM REMOVIDO");
}

@oseasperes
Copy link

#esse código deu erro pra mim, tive que fazer as seguintes alterações:

import "dart:io";

List produtos = [];

main() {
bool condicao = true;
while (condicao) {
print("==== ADICIONE UM PRODUTO ====");
String? text = stdin.readLineSync()!; //adicionar ? depois de String, e
//notnull no readLineSync
if (text == "sair") {
print("==== TERMINOU O PROGRAMA ====");
condicao = false;
} else if (text == "imprimir") {
imprimir();
} else if (text == "remover") {
remover();
} else {
produtos.add(text);
print("\x1B[2J\x1B[0;0H");
}
}
}

imprimir() {
for (var i = 0; i < produtos.length; i++) {
print("ITEM $i - ${produtos[i]}");
}
}

remover() {
print("==== qual item deseja remover?");
imprimir();
int item = int.parse(stdin.readLineSync()!); // notnull adicionado no
//readLineSync
produtos.removeAt(item);
print("==== ITEM REMOVIDO");
}

Muito obrigado! eu só consegui com o que vc fez! Thanks!

@peagape
Copy link

peagape commented Jun 6, 2021

#esse código deu erro pra mim, tive que fazer as seguintes alterações:

import "dart:io";

List produtos = [];

main() {
bool condicao = true;
while (condicao) {
print("==== ADICIONE UM PRODUTO ====");
String? text = stdin.readLineSync()!; //adicionar ? depois de String, e
//notnull no readLineSync
if (text == "sair") {
print("==== TERMINOU O PROGRAMA ====");
condicao = false;
} else if (text == "imprimir") {
imprimir();
} else if (text == "remover") {
remover();
} else {
produtos.add(text);
print("\x1B[2J\x1B[0;0H");
}
}
}

imprimir() {
for (var i = 0; i < produtos.length; i++) {
print("ITEM $i - ${produtos[i]}");
}
}

remover() {
print("==== qual item deseja remover?");
imprimir();
int item = int.parse(stdin.readLineSync()!); // notnull adicionado no
//readLineSync
produtos.removeAt(item);
print("==== ITEM REMOVIDO");
}

Na espoca que escrive esse codigo funcionava perfeitamente rsrs, acho que não funciona mais por conta das novas versões do dart. tmj <3

@marcosdourados
Copy link

Ao pessoal que não está conseguindo. Muito provável ser a versão que está usando. Pra resolver basta colocar um "!" no codigo.
Este vídeo explica melhor https://www.youtube.com/watch?v=LulvhhDiqQw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment