viết chương trình pascal: Đọc vào một dãy chứa các số 0 hoặc 1. Hãy kiểm tra dãy này có chứa các số 0 và 1 xen kẽ nhau không? Dữ liệu vào từ file văn bản NHAP.INP gồm dòng: -Dòng đầu chứa số nguyên n(1<=n<=20) -Dòng thứ hai chứa dãy số 0,1 các số trên cùng 1 dòng cách nhau bởi dấu cách kết quả:ghi ra file văn bản xuat.out chứa chữ "YES" nếu đó là dãy chứa các số 0 và 1 xen kẽ nhau, ngược lại ghi "NO"

1 câu trả lời

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream inp("NHAP.INP");
    ofstream out("XUAT.OUT");
    int n;
    inp>>n;
    int arr[n];
    for(int i=0;i<n;i++){
        inp>>arr[i];
    }
    if(arr[0]==0){
        for(int i=1;i<n;i++){
            if((i%2==1&&arr[i]!=1)||(i%2==0&&arr[i]!=0)){
                out<<"NO";
                inp.close();
                out.close();
                return 0;
            }
        }
    }
    if(arr[0]==1){
        for(int i=1;i<n;i++){
            if((i%2==1&&arr[i]!=0)||(i%2==0&&arr[i]!=1)){
                out<<"NO";
                inp.close();
                out.close();
                return 0;
            }
        }
    }
    out<<"YES";
    inp.close();
    out.close();
    //samon247
    return 0;
}

Câu hỏi trong lớp Xem thêm