[Unity 2d] Question with converting JavaScript to C#

Okay so i found a script that does exactly what i want (making a sprite float up and down) but the problem is i cannot figure out how to convert the yield in both floatingup and floatingdown functions. The code i found:

#pragma strict

var floatup;
 function Start(){
     floatup = false;
 }
 function Update(){
     if(floatup)
         floatingup();
     else if(!floatup)
         floatingdown();
 }
 function floatingup(){
     transform.position.y += 0.3 * Time.deltaTime;
     yield WaitForSeconds(1);
     floatup = false;
 }
 function floatingdown(){
     transform.position.y -= 0.3 * Time.deltaTime;;
     yield WaitForSeconds(1);
     floatup = true;
 }

Which works well, but when i try my own version in C# i get all kinds of compiler errors. Can anybody help.

My code for reference:

using UnityEngine;
using System.Collections;

public class float_effect : MonoBehaviour {
	private bool floatup;
	// Use this for initialization
	void Start () {
		floatup = false;
	}
	
	// Update is called once per frame
	void Update () {
		if (floatup) {
			floatingup ();
		} else if (!floatup) {
			floatingdown();
		}
	}

	void floatingup(){
		transform.position.y += 0.3 * Time.deltaTime;
		//wat do? //yield WaitForSeconds(1);
		floatup = false;
	}

	void floatingdown(){
		transform.position.y -= 0.3 * Time.deltaTime;;
		//again wat do? //yield WaitForSeconds(1);
		floatup = true;
	}
}

My reasoning for the change is that i am far more familiar with c# than with Jscript.

yield return new WaitForSeconds(1f);

But you could have answered this yourself with a trivial search through the manual: Unity Script Reference – Overview: Coroutines & Yield