Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

BASH symulator silnika

#1
BASH symulator silnika
Mam problem z napisaniem programu w bashu na wątkach. Ma to być maszyna stanów.
symulator silnika:
3 stany: stop, kręci się w prawo, kręci się w lewo
z prawo na lewo bez zatrzymania nie możemy przejść
zaczynamy od stanu stop
jeżeli wciśniemy r to stan lewo
jeśli p to praco

Nie mam pojęcia jak się na to zabrać. Proszę o pomoc.

Kod:
#include "stdafx.h"
#include<stdio.h>

int main() {
    int stop=0;
    int lewo=0;
    int prawo=0;
    int exit=0;
    int stan;

    printf("Podaj stan: 1-lewo, 2-stop, 3-prawo, 4-zakoncz");
    scanf("%d" , &stan);

    while (exit==0) {

    if (stan=1)  { lewo=1; prawo=0; stop=0;};
    if (stan=2)  { stop=1; lewo=0; prawo=0;};
    if (stan=3)  { prawo=1; stop=0; lewo=0;};
    if (stan=4)  { exit=1;};
    }

}
Mam tyle w c. Muszą być wątki i w bash . Proszę o pomoc.
 System operacyjny: windows_ten Przeglądarka: firefox
#2
RE: BASH symulator silnika
Czy mógłbyś nieco jaśniej napisać, bo nie bardzo widzę, gdzie tu można zastosować wątki (chyba że każdy wątek to osobny stan i mają się przełączać między sobą). Poza tym w BASH-u nie ma wątków (można co najwyżej uruchomić proces w tle).
 System operacyjny: linux_ubuntu Przeglądarka: firefox
#3
RE: BASH symulator silnika
Być może o to chodzi. Dostałem takie zadanie, że zrobić program na wątkach z wykorzystaniem maszyny stanów i ma działać na Linuksie.
Taki przykład dostałem w bashu
Kod:
#!/bin/bash
#set -x

N=2
State[1]=0
State[2]=0

while [ 1 ]
do
   for i in {1..2}
   do  
      if [[ (${State[$i]} == 3) ]]; then
         echo "State Wait [$i]"
         State[$i]=2
         sleep 2
         read -n 1 keypress
         if [[ ($keypress == 0) ]]
         then
            State[$i]=0
         fi
      fi

      if [[ (${State[$i]} == 2) ]]; then
         echo "State Failed [$i]"
         State[$i]=3
      fi
  
      if [[ (${State[$i]} == 1) ]]; then
         echo "State Testing...[$i]"
         State[$i]=2
      fi

      if [[ (${State[$i]} == 0) ]]; then
         echo "State OK [$i]"
         State[$i]=1
      fi
   done
  
  
   sleep 2
done
 System operacyjny: android Przeglądarka: chrome
#4
RE: BASH symulator silnika
A czy masz może treść tego zadania, bo może coś zostało przeinaczone (z tymi wątkami)? Patrząc po przykładowym kodzie domyślam się, że ma być kilka niezależnie działających silników (chyba że ma być tylko jeden).
 System operacyjny: linux_ubuntu Przeglądarka: firefox
Programy: Polecane / Nowe / Inne




Podobne wątki (BASH symulator silnika)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Instalacja silnika viaa na wlasnym pc olszak 7 8601 08.04.2016, 13:25
Ostatni post: vipdavid
  [Bash] Prośba o pomoc w napisaniu skryptu buger 3 6086 02.01.2015, 22:46
Ostatni post: Szachista
  [Bash] Sprawdzanie ilości wywoływanych parametrów dpolak154 0 4857 26.05.2014, 20:23
Ostatni post: dpolak154

Skocz do:


Wybrane wątki (BASH symulator silnika)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Silnik do gier ZigglerGames 1 7821 23.08.2018 09:03
Ostatni post: Szachista
  Chciałbym zrobić prosty plik exe z jedną funkcją densour 4 8554 09.08.2018 16:24
Ostatni post: Ajgor
  Który język wybrać do stworzenia aplikacji synchronizujące pliki z urządzeniem mobiln Elemental 2 2362 18.07.2018 12:05
Ostatni post: Ajgor
  Pomysł napisania programu ROM FireBytes 3 9204 28.06.2018 16:56
Ostatni post: FireBytes
  [VBA] Tworzenie nowego arkusza z danymi z TextBox'a Pioro 4 9496 19.06.2018 23:24
Ostatni post: broda99
  Potwierdzenie na maila po wysłaniu pliku coci 0 8673 13.06.2018 20:37
Ostatni post: coci
  Pieczętowanie Archiwum Jar - Po co? wanhelsing 3 9277 19.05.2018 20:55
Ostatni post: koneton
  Wyszukiwarka w spawnerze nie reaguje na polskie znaki kazik666 0 9055 16.05.2018 12:04
Ostatni post: kazik666
  Autohotkey automatyczny zapis TheProgson 0 9149 07.05.2018 21:27
Ostatni post: TheProgson
  VBA Pobieranie wybranych plików z danymi julietta03 1 9395 04.05.2018 08:25
Ostatni post: broda99
  [VBA] Przenoszenie danych między formularzami Pioro 4 9816 23.04.2018 11:48
Ostatni post: broda99
  Skrypt, który szuka i zamienia armen10 2 9542 23.04.2018 10:04
Ostatni post: armen10
  Liniowa regresja w Pythonie a budowanie modelu Trojan3000 2 9743 16.04.2018 13:26
Ostatni post: Trojan3000
  Początki z bashem - jak napisać skrypty: wysłanie maila i kalkulator? Kristov81 4 13590 21.03.2018 18:32
Ostatni post: Szachista
Ściana Zadanie cmd.... Yanke$ 2 10704 16.03.2018 17:20
Ostatni post: FireBytes