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 10427 08.04.2016, 13:25
Ostatni post: vipdavid
  [Bash] Prośba o pomoc w napisaniu skryptu buger 3 6371 02.01.2015, 22:46
Ostatni post: Szachista
  [Bash] Sprawdzanie ilości wywoływanych parametrów dpolak154 0 5135 26.05.2014, 20:23
Ostatni post: dpolak154

Skocz do:


Wybrane wątki (BASH symulator silnika)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
Toungue Wybór szkoły średniej przez potencjalnego programistę Zikinan 1 8486 09.02.2020 15:58
Ostatni post: dzikuu86
  Poszukuję pomysłu na prosty program ;) janciu96 5 18030 13.12.2019 23:32
Ostatni post: Ajgor
  Programowanie Batch (CMD) Informatyk2019 0 9287 11.12.2019 18:30
Ostatni post: Informatyk2019
  [JavaScript] Znajdowanie przedziału czasu rafal12999 0 4464 10.12.2019 17:58
Ostatni post: rafal12999
  Przekazywanie wskaźnika przez referencję w Qt Trojan3000 3 17398 10.12.2019 13:16
Ostatni post: Ajgor
  Proszę o pomoc w uzupełnieniu ankiety dt. Zawodu Programisty MaleMonki 0 4598 17.11.2019 12:47
Ostatni post: MaleMonki
  Spring framework – jakie strony polecacie do nauki? olek23 5 10519 15.11.2019 15:57
Ostatni post: Alsenas
  Programowanie windy (problem) w C++ mysza2323 2 9880 06.11.2019 23:04
Ostatni post: mysza2323
  Programy w C ~Anonim 1 9970 22.10.2019 17:48
Ostatni post: Szachista
  Wyświetlanie informacji z bazy danych na stronie www PitPlay 1 10396 16.09.2019 11:18
Ostatni post: Ajgor
  Błąd przy uruchamianiu programu w Java z wiersza poleceń Physicist 3 4974 30.08.2019 14:16
Ostatni post: Physicist
  Python z wiersza poleceń Physicist 15 27670 21.08.2019 20:14
Ostatni post: Physicist
  Transfer plików via FTP Visual Basic FireBytes 3 7470 15.08.2019 07:41
Ostatni post: Szachista
  Menu wysuwane z boku patryk67 1 10055 07.08.2019 12:43
Ostatni post: aht
  Visual Basic Excel l.całkowitą przedstawić w postaci szesnastkowej fugaz 4 11990 18.06.2019 21:36
Ostatni post: fugaz